AngularJS ng-repeat在Chrome中不起作用
问题描述:
我知道这个问题已被多次询问,可能会被视为重复。但我没有找到答案,并决定创建一个新问题。AngularJS ng-repeat在Chrome中不起作用
问题是ng-repeat在Chrome中无法正常工作,而在FF中正常工作。有几个建议,以解决这个问题,但我已经使用它们,并没有帮助。
- 其中一个建议是使用数组作为模型而不是对象。 2.第二个是按顺序使用单引号文字。
我遇到了两种情况,仍然在Chrome中看到问题。
这里是我的代码:
<a ng-click="pred = 'price'; reverse=!reverse">
<span></span>
</a> |
<a ng-click="pred = 'name'; reverse=!reverse">
<span></span>
</a> |
<a ng-click="pred = 'time'; reverse=!reverse">
<span></span>
</a>
<div ng-repeat="item in items | orderBy:pred:!reverse">
</div>
也有链接,您可以在两个浏览器打开。有些项目按时间排序(左栏),它们在FF中排序,但不在Chrome中排序。
我正在使用angular 1.2.9我认为。请咨询如何解决这个问题。
答
原因可能是您没有初始化反向变量。
(function(angular) {
'use strict';
angular.module('orderByExample1', [])
.controller('ExampleController', ['$scope', function($scope) {
$scope.friends = [
{name: 'John', phone: '555-1212', age: 10},
{name: 'Mary', phone: '555-9876', age: 19},
{name: 'Mike', phone: '555-4321', age: 21},
{name: 'Adam', phone: '555-5678', age: 35},
{name: 'Julie', phone: '555-8765', age: 29}
];
}]);
})(window.angular);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="orderByExample1">
<div ng-controller="ExampleController" ng-init='reverse=false;'>
<a ng-click="pred = 'name'; reverse=!reverse">
Name
</a> |
<a ng-click="pred = 'phone'; reverse=!reverse">
Phone
</a> |
<a ng-click="pred = 'age'; reverse=!reverse">
Age
</a>
<table class="friends">
<tr>
<th>Name</th>
<th>Phone Number</th>
<th>Age</th>
</tr>
<tr ng-repeat="friend in friends | orderBy:pred:reverse">
<td>{{friend.name}}</td>
<td>{{friend.phone}}</td>
<td>{{friend.age}}</td>
</tr>
</table>
</div>
</body>
+0
接受答案,如果它是正确的。:) –
小提琴请? –