与Angular中的FormData中的数据一起发送文件时遇到的问题

问题描述 投票:0回答:1
  • 我正在研究角度
  • 我试图通过表单数据将文件与数据一起发送的位置
  • 但是当我将数据和文件附加到formData和console.log(formData)我什么也没收到,

让我分享我的代码

  const token  = localStorage.getItem('currentUser');
  const formData  = new FormData();

  formData.append('proposal_details' , this.PackageDetails.get('proposal_details').value);
  formData.append('businessName' , this.PackageDetails.get('BusinessName').value);

  formData.append('package_type_id' ,   this.PackageArray),
  formData.append('package_list_id',this.PacageListArray),
  formData.append('budget',this.customPayArr),
  formData.append('is_manual',this.CheckAutoPayArr),
  // tslint:disable-next-line:max-line-length
  formData.append('full_package',this.PackageDetails.get('totalPackageFee_cur').value + ' ' + this.PackageDetails.get('totalPackageFee').value),
  formData.append('signUpAmount',this.PackageDetails.get('signUpAmount_cur').value + ' ' + this.PackageDetails.get('signUpAmount').value),
  formData.append('StartDate',this.PackageDetails.get('StartDate').value),
  formData.append('endDate' , ProjectendDate),
  formData.append('project_hours', this.PackageDetails.get('project_hours').value),
  formData.append('technology_used', this.PackageDetails.get('technology_used').value),
  formData.append('attach_file', this.PackageDetails.get('attach_file').value)

  console.log(formData);

  this.rest.getProposal(formData , token).subscribe(result => {
    console.log(result);
  });

在console.log上,我得到的是空的formData

angular angular6 angular5 angular7 angular-httpclient
1个回答
0
投票

您不能直接将FormData打印到console.log(),对于您的用例,您需要使用诸如get(),getAll()等formdata的方法,可以使用.forEach()数组方法来遍历所有值并获取要打印的数据在console.log中。完整的工作示例可以在这里找到。.StackBlitz Link

这是您的实现。.

const formData  = new FormData();

formData.append('proposal_details' , 'proposal_details');
formData.append('businessName' ,'BusinessName');

console.log(formData.getAll('businessName')); // using .getAll() method.

formData.forEach(data =>{ // using forEach array method.
    console.log(data); // logs data here.
})
© www.soinside.com 2019 - 2024. All rights reserved.