发表于: 2017-02-24 23:30:50

2 1258


今天做的事

今天主要是学习了angular的foreach方法和过滤器

完成了三级联动只能显示对应省市地区

明天计划

编辑页面或者模态框按钮

收获以及困惑

在完成过滤器的时候学习了foreach方法

angular的foreach例子

var objs =[{a:1},{a:2}];
angular.forEach(objs, function(data,index,array

   do sth
});

其中第一个参数objs就是要被便利的数组对象

data就是每个被便利的对象,亦是ARRAY【index】

array也是需要遍历的集合,每次遍历时都会把objs原样的传一次。

不过后两个参数可以不写

因请求数据时返回的是123,然后要显示出对应的文字

所以想用filter来做

而filter里面则用到这个方法

使用时把请求过来的数字传进filter里,然后在它里面的函数里

执行angular的这个方法,他会便利对象的每一个属性,

若看到某个对象的id与数字相对应,则重新赋值为对象的name,将他返回即可

而有一个请求过来的值是数组,我在使用filter时是先把他循环一遍,然后再在里面执行一次

foreach,虽然能用,但是感觉这个方法并不好,

因为angular foreach方法会遍历每一个属性,无论对错,一路到底

这样在数组内容特别大的时候就会出现性能问题,比如省市的那个内容就非常多

想要让它找到内容就停止,可以这样

var keepGoing = true

angular.forEach([0,1,2], function(count){  

      if(keepGoing) {  

        if(count == 1){  

          keepGoing = false;    

}  } });


这样就可以达到效果,不过此时并不是跳出了循环本身,而是之后都是空循环

相当于什么事情都没有发生,不会执行复杂的操作,变相的提升了性能

今天最主要的困惑时github突然又炸了,无法commit,没法直接解决

想到的解决办法只能是先备份然后重新拉一次再覆盖了


返回列表 返回列表
评论

    分享到