首页 > 代码库 > Angular js 之一些简单的js操作

Angular js 之一些简单的js操作

1.<div ng-if()> </div> 括号里面是布尔值  如果是false那么你ng-if的那个dom就会不显示。(感觉这是angular js中最给力的一点)

  一般会在controller里面来设置ng-if(abc)括号里面值得布尔值 ,类似$scope.abc=true; 如果你想默认一个值为true ,一般用于不常见

 的一个字符然后设置ng-if(!abcd) 这样默认为true。 在实际操作中 遇到那种ng-repeat出来的值,需要判断排列或者是否显示的时候,

 这个时候ng-if()的作用就尤为明显。比如你只想让大于60分成绩的学生显示,但是页面上的显示成绩又是ng-repeat打印出来的,

 可以ng-if(item.num>=60),成绩小于60则为flase  既不会打印出来。

2.ng-class().....

第一种情况 ng-class="{‘类选择器1‘:布尔值,‘类选择器2‘:布尔值}"(这种情况适用于大于等于三种类选择器的时候)
第二种情况 ng-class="{true:‘类选择器1‘, false: ‘类选择器2‘}[布尔值]"(这种情况适用于两种类选择器的时候)
其他情况还没遇到过 以后还会补充。

3.利用三目运算符打印出ng-repeat想要的结果。

   比如大于等于60表示及格,小于60表示不及格。

  {{item.num>=60? "及格":"不及格"}}

  如果出现情况比较复杂的时候  可以自己封装一个过滤器

  

  如上所示如果data等于1的时候 返回买入;等于2的时候返回卖出

  过滤器在页面的使用

{{div.entrust_bs|oneFilter}}



4.在关于页面向上拉加载更多和向下拉刷新的问题


(1).向上拉加载更多,一般会在页面的content部分的最底部写如下代码 然后在controller中执行loadMore函数,当实行完一次

loadMore函数的时候  在函数内部的最底部写上

$scope.$broadcast(‘scroll.infiniteScrollComplete‘);
这样函数就会自动不执行关闭不在继续刷新

<ion-infinite-scroll  on-infinite="loadMore()"></ion-infinite-scroll>

附加一些加载更多的一些心得 如果加载更多不想去掉以前的data可以在创建一个数组,然后是每次刷新得到新的data就把data拼接起来赋值到一个空数组里面
newdata= http://www.mamicode.com/newdata.concat(data.data)



(2)向下拉刷新一般放在content的最上部  然后在controller中执行doRefresh函数,当不想执行的时候用

$scope.$broadcast(‘scroll.refreshComplete‘);关闭函数

<ion-refresher pulling-text="下拉刷新" on-refresh="doRefresh()"></ion-refresher>

 

Angular js 之一些简单的js操作