save(model: Customer) {
const formData: any = new FormData();
const files: Array<File> = this.filesToUpload;
for(let i =0; i < files.length; i++){
formData.append("uploads[]", files[i], files[i]['name']);
}
const formModel= this.myForm.value;
this.reg.appform(this.application,formData,formModel).subscribe(()=> this.goBack());
setTimeout(() => {
this.loading = false;
}, 1000);
}
这是ts
文件,其中FormData
和FormValue
都传递给服务
然后:
appform(url,FormData,info){
console.log(FormData);
// window.alert("url");
return this._http.post(url,FormData,JSON.stringify({ info}))
.map(()=>"");
}
这是Form.service.ts
将数据投放到后端
$post_date = file_get_contents("php://input");
$data = json_decode($post_date);
// print_r($data);
// exit;
$MemberData = array(
"OrgName"=>$data->info->name,
"MemberName"=>$data->info->MemberName)
这就是我从后端接收数据的方式(codeigniter中的Controller)。
在service.ts
文件中,如果在第二个位置传递模型,则数据发送完好但文件未上传。如果FormData
在第二个位置传递文件正在上传,但数据显示错误,如
尝试读取非对象值