如何使用angularJS中的函数返回的值在DOM中应用类?

时间:2017-04-19 10:38:54

标签: angularjs

我的DOM元素为:

<i id= class="icon clr-org fleft ion-bookmark" ng-class="{business.class : setFavouriteBusinessIcon(business.ID, $index)}"></i>

现在我想在business.class返回true时将setFavouriteBusinessIcon(business.ID, $index)作为元素的类应用于我的范围内的变量。

但是当前的ng-class条件不起作用。

1 个答案:

答案 0 :(得分:1)

您可以通过使用单引号和{{...}}来实现此目的。像这样:

<i ng-class="{'{{business.class}}' : setFavouriteBusinessIcon(business.ID, $index)}"></i>

以下是一个工作示例:(注意world类已应用,其CSS也是如此)

&#13;
&#13;
var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
  $scope.name = 'world';
});
&#13;
.world {
  background-color: red;
}
&#13;
<!DOCTYPE html>
<html ng-app="plunker">

<head>
  <meta charset="utf-8" />
  <title>AngularJS Plunker</title>
  <script>
    document.write('<base href="' + document.location + '" />');
  </script>
  <script data-require="angular.js@1.4.x" src="https://code.angularjs.org/1.4.12/angular.js" data-semver="1.4.9"></script>
</head>

<body ng-controller="MainCtrl">
  <p ng-class="{'{{name}}': true}">Hello {{name}}!</p>
</body>

</html>
&#13;
&#13;
&#13;