电商四十九、优化模板列表显示

①优化模板列表显示。

 

将json格式的数据显示成一般格式的数据。即把这种格式的数据优化一下。

我们需要将一个json字符串中某个属性的值提取出来,用逗号拼接成一个新的字符串,这样的功能比较常用,我们将方法写在baseController.js文件中。

如果对象是:var a ={"id":1,"text":"联想"};

取里面的值有两种方法:

a.id和a.text

或者:a['id']和a['text'],此处id和text是字符串。

//jsonString是String类型的json字符串
//key是集合(数组)[ ]中的元素{ }中的key值,如此处{“id”:1,“text”:“联想”}
//则key可以是“id”,也可以是“text”。

//key传值的时候不能传text即jsonToString(“字符串”,text),不能这样传,因为angularjs没有这个text变量。

//key传值的时候只能传'text'即jsonToString(“字符串”,'text'),或者‘id’,即jsonToString(“字符串”,‘id'),因为将text

//和id当字符串传入
$scope.jsonToString = function(jsonString,key){
//将json字符串jsonString,String类型,转换成json对象
//此处转换成名字叫json的json对象,且此json对象是集合(数组)[ ]类型。
var json = JSON.parse(jsonString);
//value是最终要返回的内容。
var value="";
for(var i=0;i<json.length;i++){
//json[i].key,不对,因为是‘id’,也可能是‘text’
//json[i].text,也不对
//是json[i][key],key传‘id’或者‘text’单引号。
value += "," + json[i][key];
}    
return value;
}

entity in list 由代码分析得到list返回的是TbTypeTemplate.java类的集合(数组)[  ]的值。对应的是entity.name、entity.specIds、entity.brandIds和entity.customAttributeItems都是String类型。而且entity.specIds、entity.brandIds和entity.customAttributeItems都是带[ ]的String类型。带[ ]的String类型转换成json对象,是json的集合(数组)类型

{{jsonToString.(entity.brandIds,'text')}}
{{jsonToString.(entity.specIds,'text')}}                        
{{jsonToString.(entity.customAttributeItems,'text')}}

得到对应数据库的text字段的值。

但结尾或者开头多了一个分隔逗号。

改进后的代码为:

 

可以测试。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值