【发布时间】:2017-02-20 01:20:05
【问题描述】:
我想查看数组中值的变化,如果发生变化,将旧值与新值进行比较,如果旧值大于新值,则将“红色”类添加到元素。
每个项目的控制器? 这在大型数组中可能效率低下。
最好的方法是什么?
var app = angular.module('myApp',[])
app.controller('myCtrl', function($scope,DataFactory) {
$scope.items = DataFactory.data;}));
});
app.factory('DataFactory', function($interval){
var data = [
{ 'value' : 1 },
{ 'value' : 2 },
{ 'value' : 3 },
{ 'value' : 4 },
{ 'value' : 5 },
{ 'value' : 6 }
];
var i = 0;
$interval(function(){
i++;
data[3].value = i;
},2000);
return {
data : data
}
});
.block {
width: 50px;
height: 50px;
background: #ccc;
text-align: center;
padding-top:10px;
}
.gren {
background: green;
}
.red {
background: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="myApp">
<div ng-controller="myCtrl">
<div ng-repeat="item in items" class="block">
{{item.value}}
</div>
</div>
</body>
【问题讨论】:
-
它不适用于数组中的值。
标签: angularjs