複数のプロパティで項目のリストを並べ替える必要があります。だから私は変数にバインドする配列を使用します。anglejsで適切に配列を選択する方法
ユーザーがselect
で注文オプションを選択できるようになるまで、すべてがうまく動作します。私の配列が1つ以上の値を持っているときにブレークします。デフォルトではtrack by $index
のように見えます。
var myApp = angular.module("myApp", []);
myApp.controller("myCtrl", function($scope){
$scope.items = [
\t {a: "3", b: "First"},
\t {a: "2", b: "Second"},
\t {a: "1", b: "Third"}
];
$scope.my_orderby = ['a','b'];
$scope.my_selected = {
\t a: ['a'],
\t b: ['b'],
\t ab: ['a','b'],
\t ba: ['b','a']
};
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
<button ng-click="my_orderby.push(my_orderby.shift())">In place: {{my_orderby}}</button>
<select ng-model="my_orderby">
<option value="{{v}}" ng-repeat="(k,v) in my_selected">{{k}}</option>
</select>
<button ng-click="items.push(items.shift())">{{items}}</button>
<hr/>
<div ng-repeat="item in items | orderBy:my_orderby track by $index">{{item.a}} {{item.b}}</div>
</div>
どのように私は複数のプロパティでソートできるように行うことになっていますか?
Upvoted。 100%の作業ではありませんが、あなたは私にソリューションの正しいリードを与えました。ありがとう! – RaphaMex