首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角度:ng-重复orderBy滤波器

角度:ng-重复orderBy滤波器
EN

Stack Overflow用户
提问于 2014-01-16 05:37:49
回答 1查看 2K关注 0票数 1

考虑到以下情况,我想通过displayOrder订购这个列表

代码语言:javascript
复制
angular.module('app').value('sidebarMenus', {
    'Sites': {
        displayName: 'Sites',
        displayOrder: 0
    },
    'Inspections': {
        displayName: 'Inspections',
        displayOrder: 1,
        items: [
            { name: 'Create New', state: 'Admin.UserList' }
        ]
    },
    'Permits': {
        displayName: 'Permits',
        displayOrder: 2
    },
    'Compliance': {
        displayName: 'Compliance',
        displayOrder: 3
    },
    'Accounts': {
        displayName: 'Accounts',
        displayOrder: 4
    },
    'Documents': {
        displayName: 'Documents',
        displayOrder: 5
    },
    'Queries': {
        displayName: 'Queries',
        displayOrder: 6
    },
    'Reports': {
        displayName: 'Reports',
        displayOrder: 7
    },
    'Admin': {
        displayName: 'Admin',
        displayOrder: 8,
        items: [
            { name: 'Users', state: 'Admin.UserList' },
            { name: 'Groups', state: 'Admin.GroupList' },
            { name: 'Workgroups', state: 'na' },
        ]
    }
});

我有这个,但不管用。由于某些原因,默认情况下按字母顺序排序。

代码语言:javascript
复制
<li data-ng-repeat="item in sidebar.menus | orderBy: item.displayOrder">
    <a href="javascript:;" data-ng-bind="item.displayName" data-ng-click="sidebar.menu.setMenu(item)"></a>
</li>

结果

代码语言:javascript
复制
Accounts
Admin
Compliance
Documents
Inspections
Permits
Queries
Reports
Sites
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-16 06:59:22

sidebarMenus是一个对象。orderBy只能应用于数组。不能对对象的属性进行排序;)

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21154106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档