6

AngularJS filterorder、またはlimitToforの組み合わせで UnderscoreJSをng-repeat模倣できますか?_.last

4

2 に答える 2

15

Gloopy の答えは正しいですが、単なるメモです...アンダースコアを使用する場合は、次のことができます。

myApp.run(function($rootScope) {
  $rootScope._ = _;
});

<div ng-repeat="item in _.last(items)">
于 2012-08-14T13:23:51.363 に答える
12

あなたの質問を正しく理解していれば、このフィドルでうまくいくと思います。

このデータの場合:

$scope.items = [{sort: 1, name: 'First'}, 
                {sort: 2, name: 'Second'}, 
                {sort: 3, name: 'Third'}, 
                {sort: 4, name:'Last'}];

配列を実際にソートせず、配列の最後の 2 つの項目 (アンダースコアの最後のように) をそのまま取得したくない場合は、負の制限を試すことができます (これにより、Third, Last が表示されます)。

<div ng-repeat="item in items | limitTo:-2">

また、この例のように、データを逆に並べ替えて 2 つの項目を取得するように、フィルターを連鎖させることもできます (これは Last、Third と表示されます)。

<div ng-repeat="item in items | orderBy:'sort':true | limitTo:2">
于 2012-08-13T22:39:57.583 に答える