【问题标题】:Angular ng-repeat orderBy forllowing a specific schemaAngular ng-repeat orderBy 允许特定的模式
【发布时间】:2016-11-07 22:22:40
【问题描述】:

我有以下代码:

<td>
   <div ng-repeat="authority in user.authorities">
       <span class="label label-info">{{ authority }}</span>
   </div>
</td>

在我的 javascript 中,user.authorities 可以这样定义:

vm.authorities = ['ROLE_USER', 'ROLE_ADMIN', 'ROLE_INVITE', 'ROLE_SuperADMIN'];

一切正常,但结果是

ROLE_ADMIN

ROLE_INVITE

ROLE_SuperADMIN

ROLE_USER

我想获得:

ROLE_INVITE

ROLE_USER

ROLE_ADMIN

ROLE_SuperADMIN

即非字母顺序...我在stackoverflow上搜索了一个解决方案,但没有找到...

你能告诉我我该怎么做吗?我不想更改对象的定义...

【问题讨论】:

    标签: javascript angularjs sorting ng-repeat alphabetical


    【解决方案1】:

    您应该添加一个字段来排序您的列表,即:

    vm.authorities = [{order: 1, name: 'ROLE_USER'}, ...];
    

    并在您的ng-repeat 中使用| orderBy:'order'

    (对不起,现在我已经仔细阅读了所有问题)

    如果您不想更改数组,可以创建自定义比较方法。更多信息在这里:https://docs.angularjs.org/api/ng/filter/orderBy

    【讨论】:

      猜你喜欢
      • 2016-01-26
      • 2013-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-07
      • 2015-02-11
      • 2017-01-12
      • 1970-01-01
      相关资源
      最近更新 更多