Authored by 郭成尧

'颜色状态问题引用传值'

@@ -305,13 +305,13 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => { @@ -305,13 +305,13 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => {
305 if (origin.goodsList) { 305 if (origin.goodsList) {
306 let goodsGroup = [], 306 let goodsGroup = [],
307 sizeName = '', 307 sizeName = '',
308 - colorList = {}, 308 + colorList = [],
309 sizeList = {}, 309 sizeList = {},
310 allSizeList = {}, 310 allSizeList = {},
311 colorStorageGroup = {}, 311 colorStorageGroup = {},
312 colorStorageNum = 0; 312 colorStorageNum = 0;
313 313
314 - _.forEach(origin.goodsList, function(value, key) { 314 + _.forEach(origin.goodsList, function(value) {
315 if (value.status === 0) { 315 if (value.status === 0) {
316 return; 316 return;
317 } 317 }
@@ -360,13 +360,13 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => { @@ -360,13 +360,13 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => {
360 }); 360 });
361 361
362 // 颜色分组 362 // 颜色分组
363 - colorList[key] = { 363 + colorList.push({
364 id: value.colorId, 364 id: value.colorId,
365 skcId: value.productSkc, 365 skcId: value.productSkc,
366 name: value.colorName, 366 name: value.colorName,
367 goodsName: value.goodsName, 367 goodsName: value.goodsName,
368 colorNum: colorStorageNum 368 colorNum: colorStorageNum
369 - }; 369 + });
370 } 370 }
371 371
372 // 缩略图 372 // 缩略图
@@ -384,7 +384,9 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => { @@ -384,7 +384,9 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => {
384 sizeGroup[0] = { 384 sizeGroup[0] = {
385 size: [] 385 size: []
386 }; 386 };
387 - _.forEach(allSizeList, function(value, key) { 387 +
  388 + _.forEach(allSizeList, (value, key) => {
  389 +
388 // 默认尺码 390 // 默认尺码
389 sizeGroup[0].size.push({ 391 sizeGroup[0].size.push({
390 name: key, 392 name: key,
@@ -397,13 +399,16 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => { @@ -397,13 +399,16 @@ const _detailDataPkg = (origin, uid, vipLevel, ua) => {
397 }; 399 };
398 400
399 // 各个颜色的尺码, 每行显示一个尺码对应的颜色 401 // 各个颜色的尺码, 每行显示一个尺码对应的颜色
400 - _.forEach(colorList, function(colorArr) {  
401 - colorArr.colorNum = 0;  
402 - if (colorStorageGroup[colorArr.skcId] &&  
403 - colorStorageGroup[colorArr.skcId][key]) {  
404 - colorArr.colorNum = colorStorageGroup[colorArr.skcId][key]; 402 + _.forEach(colorList, (colorArr) => {
  403 + let tempColorArr = _.cloneDeep(colorArr);
  404 +
  405 + if (colorStorageGroup[tempColorArr.skcId] &&
  406 + colorStorageGroup[tempColorArr.skcId][key]) {
  407 + tempColorArr.colorNum = colorStorageGroup[tempColorArr.skcId][key];
  408 + } else {
  409 + tempColorArr.colorNum = 0;
405 } 410 }
406 - colorGroup[i].color.push(Object.assign({}, colorArr)); 411 + colorGroup[i].color.push(Object.assign({}, tempColorArr));
407 }); 412 });
408 colorGroup[i].id = value.id; 413 colorGroup[i].id = value.id;
409 414