【发布时间】:2021-11-02 16:17:42
【问题描述】:
我有这些对象数组,其中包含具有唯一字段的文件(图像)。提交后,使用 Angular HttpClient 将对象的 newArray 发送到服务器
// Old Arrray of Objects
let oldArray = [
{
"name": "macbook pro",
"color": "white",
"serialno": "s34345",
"price": 1000,
"description": "excellent for work",
"image": "photo1.jpg",
"image2": "photo2.png"
},
{
"name": "hp pavilion 23",
"color": "black",
"serialno": "s767",
"price": 2000,
"description": "good speed",
"image": "hp-photo1.jpg",
"image2": "hp-photo2.png"
}
];
声明变量并循环遍历旧的对象数组以附加到新的 FormData()
// Declare an new Array
let newArray: any[] = [];
// Declare formData variable
formData = new FormData();
// Loop through old Array of objects
for (let i = 0; i < oldArray.length; i++) {
// get Individual object {} from array [{},{}]
let formValue = oldArray[i];
for (let key of Object.keys(formValue)) {
const value = formValue[key];
// Append key, values to formData()
this.formData.append(key, value);
}
// Create/Push to newArray
newArray.push(this.formData);
}
使用 Angular HttpClient 发布到服务器
// Post to server using Angular HttpClient
this.productService.addProductsArray(newArray).pipe(first())
.subscribe(
(data: any) => {
if (data) {
alert('successful');
}
});
每当我提交表单时,服务器请求中都没有数据或对象数组
【问题讨论】:
标签: html arrays angular typescript form-data