Commit 30fd569d authored by xuguangxing's avatar xuguangxing

feat: 支持批量sku去重,并优化商品信息赋值的问题

parent 2e1b3e23
......@@ -69,6 +69,11 @@ export default {
this.data = data;
},
async getGoods(params) {
let prevDataArr = this.data && this.data.data ? JSON.parse(JSON.stringify(this.data.data)) : [];
let skuToInfoMaps = {};
for (let i = 0; i < prevDataArr.length; i++) {
skuToInfoMaps[prevDataArr[i].skuNo] = prevDataArr[i];
}
const res = await operationApi.getGoods(params);
try {
let goodsList = res.skus || [];
......@@ -82,7 +87,10 @@ export default {
item.img = goodsList[i].skuUrl;
item.subtitle = '';
item.status = goodsList[i].status;
arr.push(item)
if (skuToInfoMaps[goodsList[i].skuNo]) {
item = Object.assign({}, skuToInfoMaps[goodsList[i].skuNo])
};
arr.push(item);
}
this.$set(this.data, 'data', arr);
} else {
......@@ -104,7 +112,7 @@ export default {
return;
}
this.getGoods({
skus
skus: Array.from(new Set(skus))
});
}
},
......
......@@ -82,6 +82,11 @@ export default {
this.data = data;
},
async getGoods(params) {
let prevDataArr = this.data && this.data.data ? JSON.parse(JSON.stringify(this.data.data)) : [];
let skuToInfoMaps = {};
for (let i = 0; i < prevDataArr.length; i++) {
skuToInfoMaps[prevDataArr[i].skuNo] = prevDataArr[i];
}
const res = await operationApi.getGoods(params);
try {
let goodsList = res.skus || [];
......@@ -98,7 +103,10 @@ export default {
item.tagColor = '';
item.tagBgImg = '';
item.status = goodsList[i].status;
arr.push(item)
if (skuToInfoMaps[goodsList[i].skuNo]) {
item = Object.assign({}, skuToInfoMaps[goodsList[i].skuNo])
};
arr.push(item);
}
this.$set(this.data, 'data', arr);
} else {
......@@ -120,7 +128,7 @@ export default {
return;
}
this.getGoods({
skus
skus: Array.from(new Set(skus))
});
}
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment