我想知道如何使用数组创建const
对象变量,在其中添加项目时,该变量不应包含索引对象。
例如
const estimateData = {
'customerId': customerId,
'vehicleInformation': {},
'datalines': []
};
在这里,当我在datalines
中添加项目时,它总是带有key-value
对,如下所示。
"datalines": [
0 : {
"lineNumber": 1,
...
},
1 : {
"lineNumber": 2,
...
}
]
因此,我的网络服务会返回异常,并显示类似
的错误error: "Bad Request"
exception: "com.alldata.estimator.exceptions.BadRequestException"
message: "unknown dataline type 0"
path: "/estimator/estimates/211204"
所以我的问题是如何删除0,1索引,以便我的请求可以成功传递并可以批准数据。我试图通过push
添加数据,重新分配数组,forEach循环,但是没有任何效果。
// I am trying to add data in array by following methods, but nothing works.
this.selectedEstimate.datalines.forEach((lineItem: ILineItem) => {
estimateData.datalines.push(lineItem);
});
// estimateData.datalines = this.selectedEstimate.datalines;
我也曾尝试从JSON解析数据,但是没有用。
请让我知道问题出在哪里,我该如何解决。预先感谢。
答案 0 :(得分:1)
将estimateData
字符串化后再发送到服务器。
使用以下代码:-
JSON.stringify(estimateData)
const a = {
'customerId': 1,
'vehicleInformation': {},
'datalines': []
};
a.datalines.push({age: 1});
a.datalines.push({age: 2});
a.datalines.push({age: 3});
a.datalines.push({age: 4});
// open browser console to check response
console.log(a);
console.log(JSON.stringify(a));
请打开浏览器控制台以查看要打印的索引。