我正在使用来自http://plnkr.co/edit/CBcbkc的ng-table的分组示例
现在,表被初始化,扩展了行,但我希望它们最小化,因为我有超过100条记录.我怎样才能做到这一点?
j.w*_*wer 10
您可以group.$hideRows使用ngInit以下设置为true :
<tbody ng-repeat="group in $groups" ng-init="group.$hideRows = true">
更新
我想找到一个更好的解决方案,因为angular docs不鼓励使用ngInit访问范围变量.
您可以为在以下位置创建的每个组创建一个控制器ng-repeat:
<tbody ng-repeat="group in $groups" ng-controller="groupCtrl">
Run Code Online (Sandbox Code Playgroud)
然后,您可以直接访问组对象.这样做的一个优点是能够有条件地扩展一个群体:
.controller('groupCtrl', function($scope) {
if ($scope.group.value != 'Administrator')
$scope.group.$hideRows = true;
});
Run Code Online (Sandbox Code Playgroud)
仅供参考
我想知道为什么我$hideRows在源头找不到任何引用.事实证明,组对象$hideRows在单击之后才具有属性.为了证明这一点,我$hideRows用一个组成的名称替换了它,它的工作原理是一样的.
<tbody ng-repeat="group in $groups">
<tr class="ng-table-group">
<td colspan="{{$columns.length}}">
<a href="" ng-click="group.invokeInvisbility = !group.invokeInvisbility">
<span class="glyphicon" ng-class="{ 'glyphicon-chevron-right': group.invokeInvisbility, 'glyphicon-chevron-down': !group.invokeInvisbility }"></span>
<strong>{{ group.value }}</strong>
</a>
</td>
</tr>
<tr ng-hide="group.invokeInvisbility" ng-repeat="user in group.data">
Run Code Online (Sandbox Code Playgroud)
难怪你找不到初始化它的方法.
| 归档时间: |
|
| 查看次数: |
13800 次 |
| 最近记录: |