私は多次元配列を持っています。多次元配列に(key、value)を使用すると、ng-repeatディレクティブソートが無効になります
{"rel":["aa","cc","bb"],"cst":["ff","ee","gg"],"mtm":["hh","jj","ii"]}
「REL」、「CST」および「MTM」以下の例のよう
は、フィルタ名として使用され、各フィルタは、表示される独自のリストを有することになります。
私の問題は、角度jsでng-repeatを使用するときに、フィルタをアルファベット順に並べ替えることです。
この問題を解決するための回避策が見つかりました。
マイソリューション:キーはちょうど最初の文字を削除して印刷する機能を使用して印刷中
は、以下の例
{"1rel":["aa","cc","bb"],"2cst":["ff","ee","gg"],"3mtm":["hh","jj","ii"]}
のようにフィルタ(キー)に整数を追加します。
<script>
angular.module('ngrepeat-sort-remove', []).controller('ngrepeat-sort', function($scope) {
$scope.ngtestrepeat = {"1rel":["aa","cc","bb"],"2cst":["ff","ee","gg"],"3mm":["hh","jj","ii"]};
$scope.removenum =function(key){
return key? key.substr(1) : '';
};
});
</script>
<body ng-app="ngrepeat-sort-remove" ng-controller="ngrepeat-sort">
<div class="ngtest" ng-repeat="(key, value) in ngtestrepeat ">
{{removenum(key)+'-Loop start'}}
<ul>
<li ng-repeat="row in value">{{row}} </li>
</ul>
</div>
</body>
この一般的な方法を作成する場合は、数字をアンダースコアで追加し、表示中に関数を使用して削除することができます。
マイ角度バージョン:誰がこれをよりよい解決策を持っている場合v1.3.14
親切にここに投稿。
しかし、数字を前置せずに動作します。このhttp://plnkr.co/edit/0F1NdEQQuDtnrAfrKDiN?p=preview例。 –
角度バージョンでチェック:v1.3。14 –
ええ、あなたは正しいです私はこの問題のための私の答えを更新して助けになる希望。確認していただけますか? –