加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – ng-table分组 – 初始化行最小化

发布时间:2020-12-17 06:54:25 所属栏目:安全 来源:网络整理
导读:我正在使用 http://plnkr.co/edit/CBcbkc中ng-table的分组示例 现在,表被初始化,扩展了行,但我希望它们最小化,因为我有超过100条记录.我怎样才能做到这一点? 解决方法 您可以使用 ngInit 将组.$hideRows设置为true: tbody ng-repeat =“$groups中的组”ng-
我正在使用 http://plnkr.co/edit/CBcbkc中ng-table的分组示例

现在,表被初始化,扩展了行,但我希望它们最小化,因为我有超过100条记录.我怎样才能做到这一点?

解决方法

您可以使用 ngInit将组.$hideRows设置为true:

< tbody ng-repeat =“$groups中的组”ng-init =“group.$hideRows = true”>

更新
我想找到一个更好的解决方案,因为angular docs不鼓励使用ngInit来访问范围变量.

您可以为ng-repeat中创建的每个组创建一个控制器:

<tbody ng-repeat="group in $groups" ng-controller="groupCtrl">

然后,您可以直接访问组对象.这样做的一个优点是能够有条件地扩展一个群体:

.controller('groupCtrl',function($scope) {
  if ($scope.group.value != 'Administrator')
    $scope.group.$hideRows = true;
});

http://plnkr.co/gXfsBq

FYI
我想知道为什么我在源代码中找不到任何对$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">

难怪你找不到初始化它的方法.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读