在AngularJS中怎么实现读取JSON数据后,根据同一店铺名称下循环购买的商品
我在做购物车的模拟,在service中手写了一组json数组对象,vargoods=[{id:1,sstype:"企业商城",image_file:"img/cartIm...
我在做购物车的模拟,在service中手写了一组json数组对象,
var goods = [{
id:1,
sstype:"企业商城",
image_file:"img/cartImg/c8.jpg",
name:"舒语17 18 19寸沃森CVT沃尔沃日产轮毂原装正品啦啦啦啦",
shangpinpingpai:"沃森CTV",
price:1798,
count:1 //数量
},{
id:2,
sstype:"个人商城",
image_file:"img/cartImg/c6.jpg",
name:"潮流时尚男款修身牛仔上衣秋款男装牛仔男装啦啦啦啦啦",
shangpinpingpai:"凡兔",
price:200,
count:1
},{
id:3,
sstype:"个人商城",
image_file:"img/cartImg/c2.jpg",
name:"凡兔时尚男款修身牛仔裤秋款牛仔男裤",
shangpinpingpai:"凡兔",
price:156,
count:1
},{
id:4,
sstype:"企业商城",
image_file:"img/cartImg/c8.jpg",
name:"舒语17 18 19寸沃森CVT沃尔沃日产轮毂原装正品啦啦啦啦",
shangpinpingpai:"沃森CTV",
price:1798,
count:1
}
];
在controller中注入服务拿到这个数组对象,我要在html中ng-repeat的出来,可是出来的效果是每个店名都对应一个商品,即使有相同的店名还是会重新循环一行对应一个商品。
现在我想实现的是让这些在同一店铺中的商品都循环到一个店铺名称下,还望大神们多多指点啊!!感激不尽! 展开
var goods = [{
id:1,
sstype:"企业商城",
image_file:"img/cartImg/c8.jpg",
name:"舒语17 18 19寸沃森CVT沃尔沃日产轮毂原装正品啦啦啦啦",
shangpinpingpai:"沃森CTV",
price:1798,
count:1 //数量
},{
id:2,
sstype:"个人商城",
image_file:"img/cartImg/c6.jpg",
name:"潮流时尚男款修身牛仔上衣秋款男装牛仔男装啦啦啦啦啦",
shangpinpingpai:"凡兔",
price:200,
count:1
},{
id:3,
sstype:"个人商城",
image_file:"img/cartImg/c2.jpg",
name:"凡兔时尚男款修身牛仔裤秋款牛仔男裤",
shangpinpingpai:"凡兔",
price:156,
count:1
},{
id:4,
sstype:"企业商城",
image_file:"img/cartImg/c8.jpg",
name:"舒语17 18 19寸沃森CVT沃尔沃日产轮毂原装正品啦啦啦啦",
shangpinpingpai:"沃森CTV",
price:1798,
count:1
}
];
在controller中注入服务拿到这个数组对象,我要在html中ng-repeat的出来,可是出来的效果是每个店名都对应一个商品,即使有相同的店名还是会重新循环一行对应一个商品。
现在我想实现的是让这些在同一店铺中的商品都循环到一个店铺名称下,还望大神们多多指点啊!!感激不尽! 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏5(财富值+成长值)
1个回答
展开全部
function newgoods(goods){
var mygoods = [];
for (var i = 0; i < goods.length; i++) {
if(mygoods[goods[i].sstype]){
mygoods[goods[i].sstype].push(goods[i]);
}else{
mygoods[goods[i].sstype] = [];
mygoods[goods[i].sstype][0] = goods[i]
}
};
return mygoods;
}
var ngoods = newgoods(goods);
console.log(ngoods);
把数据处理一下再用吧,要用两次ng-repeat
var mygoods = [];
for (var i = 0; i < goods.length; i++) {
if(mygoods[goods[i].sstype]){
mygoods[goods[i].sstype].push(goods[i]);
}else{
mygoods[goods[i].sstype] = [];
mygoods[goods[i].sstype][0] = goods[i]
}
};
return mygoods;
}
var ngoods = newgoods(goods);
console.log(ngoods);
把数据处理一下再用吧,要用两次ng-repeat
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询