2017-04-19 6 views
1

私はと私のDOM要素を持っています。今、私はsetFavouriteBusinessIcon(business.ID, $index)がtrueを返したときに、要素のクラスとしての私の範囲で可変であるbusiness.classを適用したいangularJSの関数から返された値を使ってDOMにクラスを適用する方法は?

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

現在のng-class条件は機能していません。

+0

クラス= "{{クラス名}}" これは正常に動作します:

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

ここで働い例です –

答えて

1

一重引用符で囲んで{{...}}とすることでそうすることができます。このように:(worldクラスが適用され、とてもそのCSSでされたことの通知)

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

 
app.controller('MainCtrl', function($scope) { 
 
    $scope.name = 'world'; 
 
});
.world { 
 
    background-color: red; 
 
}
<!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="[email protected]" 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>