我有一个数组$scope.items
。
我想如果该项是$first
in
之一,则添加css类<div ng-repeat="item in items">
<div class='' > {{item.title}}</div>
</div>
。
是否可以用角度来完成?一般来说,我如何处理Ajs中的布尔值?
{{1}}
答案 0 :(得分:126)
应该是
<div ng-repeat="item in items">
<div ng-class='{in:$first}' > {{item.title}}</div>
</div>
查看http://docs.angularjs.org/api/ng.directive:ngClass和此帖子What is the best way to conditionally apply a class?中的ng-class
指令
答案 1 :(得分:3)
您可以尝试使用方法调用方法。
<强> HTML 强>
<div ng-controller = "fessCntrl">
<div ng-repeat="item in items">
<div ng-class='rowClass(item, $index)' > {{item.title}}</div>
</div>
</div>
<强> JS 强>
var fessmodule = angular.module('myModule', []);
fessmodule.controller('fessCntrl', function ($scope) {
$scope.items = [
{title: 'myTitle1', value: 'value1'},
{title: 'myTitle2', value: 'value2'},
{title: 'myTitle3', value: 'value1'},
{title: 'myTitle4', value: 'value2'},
{title: 'myTitle5', value: 'value1'}
];
$scope.rowClass = function(item, index){
if(index == 0){
return item.value;
}
return '';
};
});
fessmodule.$inject = ['$scope'];
演示 Fiddle