我正在尝试在我的应用中添加ng-class
类。
我有类似
的东西HTML
<li ng-repeat="item in items"
ng-click="getItem(item)"
ng-class="{shine : item.isPick}" // shine class will make the font color change to red
>{{item.name}}
</li>
在我的控制器中
$scope.getItem = function(item) {
$scope.items.forEach(function(item){
item.isPick = false; // remove all the items that have shine class
})
item.isPick = true; // adding the shine class back
}
基本上我想在用户点击它时删除所有其他“shine
”类,但所选项目除外。我的代码在上面工作,但我认为有更好的方法来做它而不是循环所有的项目。有人可以帮我吗?非常感谢!
答案 0 :(得分:3)
在转发器中使用$index
,并在选择该索引时添加该类:
<li ng-repeat="item in items"
ng-click="getItem($index)"
ng-class="{shine : activeIndex == $index}"
>{{item.name}}
</li>
$scope.getItem = function(index) {
$scope.activeIndex = index;
}