ng-show和ng-hide的进阶应用
在数据列表渲染的时候,我们可能不仅有一层数据,可能是三级甚至更多,如果我们要显示或者隐藏对应的数据,那么就需要给数据进行子scope的绑定。如下
html
<div ng-app="demoApp">
<table ng-controller="mainCtrl">
<tr ng-repeat="app in apps" ng-model="app" ng-hide="app.hidden">
<td>
{{app.text}}
</td>
<td>
<button ng-click="underCarriage($index)">hide</button>
</td>
</tr>
</table>
</div>
javascript
app=angular.module('demoApp',[]); app.controller('mainCtrl',function($scope){ $scope.apps=[{text:"app1",hidden:false}, {text:"app2",hidden:false}, {text:"app3",hidden:false}]; $scope.underCarriage=function(id){ $scope.apps[id].hidden=true; }; });
多级应当按照此方式同步进行。
另,ng-show和ng-hide无需自己设置display属性,如果自己设置了,将失去作用,小坑一个,坑的我不行。。。
其实我想叫洛羽的,谁抢了我的昵称!!