本文共 1793 字,大约阅读时间需要 5 分钟。
2.1 读取商品规格属性
修改 goodsController//查询实体$scope.findOne=function(){......goodsService.findOne(id).success(function(response){$scope.entity= response;editor.html($scope.entity.goodsDesc.introduction);//商品介绍$scope.entity.goodsDesc.itemImages=JSON.parse($scope.entity.goodsDesc.itemImages);//图片列表//扩展属性列表$scope.entity.goodsDesc.customAttributeItems=JSON.parse($scope.entity.goodsDesc.customAttributeItems);//规格$scope.entity.goodsDesc.specificationItems=JSON.parse($scope.entity.goodsDesc.s pecificationItems);});}//根据规格名称和选项名称返回是否被勾选$scope.checkAttributeValue=function(specName,optionName){var items= $scope.entity.goodsDesc.specificationItems;var object= $scope.searchObjectByKey(items,'attributeName',specName);if(object==null){ return false;}else{if(object.attributeValue.indexOf(optionName)>=0){ return true;}else{return false;}}
修改页面上规格面板的复选框,运用 ng-checked 指令控制复选框的勾选状态
<input type="checkbox"
ng-click="updateSpecAttribute($event,pojo.text,p.optionName);createSKUTable()" ng-checked="checkAttributeValue(pojo.text,p.optionName)">{ {p.optionName}}2.1 读取 SKU数据显示 SKU 商品列表,并自动读取价格、库存等数据加载到列表中2.1.1 后端代码在 GoodsServiceImpl 的 findOne 方法中加载 SKU 商品数据//查询 SKU 商品列表
TbItemExample example=new TbItemExample(); com.pinyougou.pojo.TbItemExample.Criteria criteria =example.createCriteria();criteria.andGoodsIdEqualTo(id);//查询条件:商品 ID
List<TbItem> itemList = itemMapper.selectByExample(example); goods.setItemList(itemList);2.1.1 前端代码在 goodsController.js 修改 findOne 方法的代码//查询实体$scope.findOne=function(){........goodsService.findOne(id).success(function(response){$scope.entity= response;.........//SKU 列表规格列转换for( var i=0;i<$scope.entity.itemList.length;i++ ){$scope.entity.itemList[i].spec =JSON.parse( $scope.entity.itemList[i].spec);}});}
转载于:https://blog.51cto.com/13517854/2165498