AngularJS ngRepeat orderBy无法在Chrome中运行

时间:2015-04-17 04:49:10

标签: angularjs

当控制器最初加载数据时,我希望行的显示顺序与它们添加到我的JSON中的顺序相同。

当我在IE和FF中执行此操作时,行按照添加顺序显示,但是当我在Chrome中执行此操作时,中间项(在本例中为行#150)出现在列表的开头。这是为什么?

我有Json回复,

    [
      {
        "code": "4001",
        "description": "Transactions",
        "labelName": null,
        "target": null,
         "sortOrder": 100,
        "iconTarget": "fa-inr"
      },
      {
        "code": "4053",
        "description": "Cash Management",
        "labelName": null,
        "target": null,
        "sortOrder": 150,
        "iconTarget": "fa-money"
      },
      {
        "code": "4053",
        "description": "Cash Management",
        "labelName": null,
        "target": null,
        "sortOrder": 500,
        "iconTarget": "fa-money"
      }
    ]

模板

<ul class="panel sidebar-nav" ng-repeat="item in model | orderBy: -item.sortOrder">    
 <li>child links data</li>
 <li>child links data</li>
<ul>

2 个答案:

答案 0 :(得分:1)

你关闭了,只是在你的表情周围遗漏了单引号。此外,您不需要参考ng-repeat名称&#34; item&#34;,只需要参考其属性。您的代码应该是类似

的内容
<ul ng-repeat="item in model | orderBy: 'sortOrder'">

请参阅this plunker

答案 1 :(得分:-3)

更改angularjs版本1.5.x.它对我有用。