我有一个模板,其中我想生成一些HTML,只有当前项目有一些不同的字段从前一个项目。如何访问ng-repeat中的上一个项目?
你可以做类似的事情
原文链接:https://www.f2er.com/angularjs/145842.html<div ng-app="test-app" ng-controller="MyController"> <ul id="contents"> <li ng-repeat="content in contents"> <div class="title">{{$index}} - {{content.title}} - {{contents[$index - 1]}}</div> </li> </ul> </div>
JS
var app = angular.module('test-app',[]); app.controller('MyController',function($scope){ $scope.contents=[{ title: 'First' },{ title: 'Second' },{ title: 'Third' }] })
演示:Fiddle
注意:$ index是指令数组,它可能不同于范围数组。使用内联变量访问正确的数组。
<li ng-repeat="content in (correctContents = (contents | orderBy:'id'))"> {{ correctContents[$index - 1] }} is the prev element </li>
如果你过滤或orderBy,contents [$ index]!= content。