0

Я пытаюсь использовать orderBy в ng-repeat с использованием угловых js.but, это не сортирует мой список. Есть мой код?Почему orderBy не работает в ngrepeat в angularjs?

как сортировать мой код

https://jsfiddle.net/7MhLd/1921/

var myApp = angular.module('myApp', []); 

function MyCtrl($scope) { 
    $scope.lines = { 
     "a" : {name:"bb"}, 
     "aa": {name: 'aa'}, 
     "zz": {name:"zz"}, 
     "oo": {name: 'oo'}, 
     "kk": {name:"k"}, 
     "j" : {name: "a"}, 
     "n" : {name:"n"}, 
     "c" : {name: "c"} 
    } 
} 
+2

см. Это answer http://stackoverflow.com/questions/26474920/order-by-object-key-in-ng-repeat –

+0

Дублирующий вопрос – byteC0de

ответ

0

Вы должны превратить свой объект в массив, чтобы заставить его работать

<div ng-controller="MyCtrl"> 
    <div ng-repeat="line in lines | orderBy:'name'"> 
    <div class="preview">{{line.name}} {{$index}}</div> 
    </div> 
</div> 

и контроллер

var myApp = angular.module('myApp', []); 

function MyCtrl($scope) { 
    $scope.lines = [ 
     {name:"bb"}, 
    {name: 'aa'}, 
    {name:"zz"}, 
    {name: 'oo'}, 
    {name:"k"}, 
    {name: "a"}, 
    {name:"n"}, 
    {name: "c"} 
]; 
} 
Смежные вопросы