接口传参怎么传多维数组,应该怎么传?
接口传参的时候需要给后端传的参数是数组大概是这样的:在这弹窗里面,点击弹窗下面的保存按钮调接口,需要把每一行的单位代码和总人口作为参数传过去,还要判断一下id,这条数据有id的话就传id,没有id的话就不传id 只传单位代码和总人口
// 这是点击保存的方法
save() {
this.loading = true;
getReport({
year: this.yearData
})
.then(() => {
this.loading = false;
this.$message.success('上报成功');
this.updateVisible(false);
this.$emit('done');
})
.catch((e) => {
this.loading = false;
this.$message.error(e.message);
});
}
// 这个是弹窗里面表格的方法和接口
async listAll() {
const data = await getZrkListAll({ year: this.yearData });
this.tableData = data;
}
请问接口传参应该怎么传多维数组,把每一行的单位代码和总人口传给后端,还有判断id应该怎么去操作呢?
回复
1个回答
test
2024-06-29
看你的postman截图,后端应该是PHP,对应参数转换成json格式如下:
{
"param": [{
"id": 1,
"qhdm": 370102001002,
"zrk": 6
}, {
"qhdm": 370102001010,
"zrk": 20
}],
"year": 2023
}
根据上述格式,遍历已选择数组构造参数即可:
getReport({
param: this.selectData.map((item) => {
const it = {
qhdm: item.qhdm,
zrk: item.zrk
};
if (item.id != null) {
it.id = item.id;
}
return it;
}),
year: 2023
}).then(() => {
// ...
}).catch(() => {
// ...
});
回复
适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容