我正在尝试使用具有特定背景图像的CSS类更新ng-class。例如:
<button id="search" ng-class="{travel: travel }">Search</button>
for(var i = 0; i < arrayLength; i++) {
var descriptions = uniqueFilters[i].split(' ');
if(descriptions.indexOf('Travel') > -1) {
$scope.travel = "travel";
} else {
}
}}
我收到一串字符串。我接受字符串,将句子分成单个单词,然后如果他们有特定单词,则更新课程以应用特定的背景图像。
如何让它发挥作用?
答案 0 :(得分:1)
正如@Dave V在他的评论中所说,ng-class指令需要一个布尔值,所以旅行必须是真的:
$scope.travel = true;
或者,如果您需要它是一个字符串,您可以执行以下操作:
ng-class="{travel: travel == 'travel' }"
希望有帮助=)
答案 1 :(得分:0)
您可以将函数传递到需要评估为true
或false
的{{3}}指令。
如果在控制器中创建函数travel
,则将其传递到视图中的指令中:
<button id="search" ng-class="{travel: travel() }">Search</button>
在您的控制器中:
// ... your other code
$scope.travel = function() {
for (var i = 0; i < arrayLength; i++) {
var descriptions = uniqueFilters[i].split(' ');
if (descriptions.indexOf('Travel') > -1) {
// we have satisfied our condition
// the class 'travel' will be added to the button
return true;
}
}
// we didn't satisfy the condition in our loop
// the class 'travel' will NOT be added to the button
return false;
}