Java之品优购课程讲义_day06(7)

本文介绍了一种基于用户选择的规格参数,自动化生成商品SKU信息的前端实现方案。通过深克隆技术,根据不同的规格选项动态扩展SKU列表,提高了商品信息录入的效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

商品录入【SKU 商品信息】
5.1 需求分析

基于上一步我们完成的规格选择,根据选择的规格录入商品的 SKU 信息,当用户选择相应的规格,下面的 SKU 列表就会自动生成,如下图:
Java之品优购课程讲义_day06(7)
实现思路:实现思路:

(1)我们先定义一个初始的不带规格名称的集合,只有一条记录。
(2)循环用户选择的规格,根据规格名称和已选择的规格选项对原集合进行扩充,添加规格名称和值,新增的记录数与选择的规格选项个数相同

生成的顺序如下图:
Java之品优购课程讲义_day06(7)
5.1 前端代码
5.1.1 生成 SKU列表(深克隆)
(1)在 goodsController.js 实现创建 sku 列表的方法
Java之品优购课程讲义_day06(7)

//创建 SKU 列表

$scope.createItemList=function(){

$scope.entity.itemList=[{spec:{},price:0,num:99999,status:'0',isDefault:'0'  }  ]
;//初始

var  items=    $scope.entity.goodsDesc.specificationItems;

for(var  i=0;i<  items.length;i++){

$scope.entity.itemList  =

addColumn(  $scope.entity.itemList,items[i].attributeName,items[i].attributeValue  );

}

}

//添加列值addColumn=function(list,columnName,conlumnValues){
var  newList=[];//新的集合

for(var  i=0;i<list.length;i++){

var  oldRow=  list[i];

for(var  j=0;j<conlumnValues.length;j++){

var  newRow=  JSON.parse(  JSON.stringify(  oldRow  )    );//深克隆

newRow.spec[columnName]=conlumnValues[j]; newList.push(newRow);
}

}

return  newList;

}

(2)在更新规格属性后调用生成 SKU 列表的方法

(3)在页面上添加表达式,进行测试

{{entity.itemList}}
显示效果如下:
Java之品优购课程讲义_day06(7)

转载于:https://blog.51cto.com/13517854/2163444

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值