this.form = res.data.data.records[0];
this.form.inventoryWorkSubunitList.forEach((el) => {
var data = {};
if (el.assetSn == qr) {
el.physicalInventory = 1;
alert(1);
return;
} else {
alert(2);
getAssetBook({ assetSn: qr }).then((res1) => {
if (res1.data.code == 200) {
data.assetName = res1.data.data.assetName;
data.assetSn = res1.data.data.assetSn;
data.model = res1.data.data.model;
data.location = res1.data.data.location;
data.unit = res1.data.data.unit;
data.amount = 0;
data.assetType = res1.data.data.assetType;
data.assetBrand = res1.data.data.assetBrand;
data.whomBelongs = res1.data.data.whomBelongs;
data.purchaseAmount = res1.data.data.purchaseAmount;
data.physicalInventory = 1;
this.form.inventoryWorkSubunitList.push(data);
}
});
}
});
本来this.form.inventoryWorkSubunitList就有值,else情况时,这样一循环就会重复push,怎么解决
假设
assetName
是唯一字段,push
前加个判断即可