angularjs - 以相反的顺序列出项目时反转 $index

标签 angularjs angularjs-ng-repeat ng-repeat

我偶然发现了这篇关于如何反转数组显示的帖子,当我尝试这样做时它工作正常。 angular ng-repeat in reverse

但是...然后我列出的项目是可编辑的,当我反转数组时,$index 不会被反转,所以当我编辑列出的 1 个项目时,编辑发生在另一个包含正确索引的项目中。

那么我如何确保我的 $index 也被反转了?

所以代码看起来像这样

<form action="" method="post" autocomplete="off" ng-controller="itemCtrl">
 <input type="text" name="createitem" ng-model="item" />
 <button ng-click="addItem(item)">Add item</button>
 
    <ul>
       <li ng-repeat="item in items | reverse">
            <h2>{{item.title}}</h2>
        </li>
    </ul>
</form>



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

itemApp.filter('reverse', function() {
 return function(items) {
  return items.slice().reverse();
 };
});

itemApp.controller('itemCtrl', function ($scope) {

            $scope.items = [];

            $scope.addItem = function(item){
                $scope.items.push({
                    title: item
                });

            };

最佳答案

这是我正在使用的。
您只需要将数组长度减去当前 $index :

{{myArray.length - $index}}

关于angularjs - 以相反的顺序列出项目时反转 $index,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26087109/

相关文章:

c# - ASP .NET 样板 - 注册程序集

javascript - 将 Google map 置于选择选项 AngularJS 上

javascript - 如何在数组上使用 ng-repeat 和 filter 属性?

javascript - 仅当用户使用过滤器时如何显示 ng-repeat 元素

javascript - 使用ng-repeat时如何将数据分成两半?

android - Ionic Android 版本控制失败

javascript - Angular 在 View 中使用字符串作为范围属性名称

angularjs - 将 ng-model 分配给由 ng-repeat 生成的复选框

angularjs - 在 Set 上使用 ng repeat

service - AngularJS ng-repeat 与来自服务的数据