ngClass指令:我可以使用多个表达式来添加多个类吗?

ngClass Directive: Can I use multiple expressions to add multiple classes?

这是我想要实现的一个例子

data-ng-class="{ 'tooltip_show' : showTooltip , 'tooltip__' + brand.settings.name }" 

但是没用。

您似乎还没有为第二项设置值。你的意思是像

{ 'tooltip_show' : showTooltip , 'tooltip__' + brand.settings.name : tooltipText }

{ 'tooltip_show' : showTooltip , 'tooltip__' : brand.settings.name }

?

http://jsbin.com/genaqapefe/edit?html,js,output

data-ng-class="{ 'tooltip_show': showToolTip, {{ 'tooltip_' + brand.settings.name }}: true }"

这在这个垃圾箱中对我有用。如果没有花括号,我无法对其进行评估,尽管不确定这是否是最佳做法。

ng-class使用数组形式:

<div ng-class="[showTooltip ? 'tooltip_show' : '',
                'tooltip__' + brand.settings.name]">
<div>

或计算 JavaScript 中的 class:

<div ng-class="computeClass(tooltip_show, brand.setting.name)">
</div>
$scope.computeClass(show, name) {
    var obj = {};
    obj.showTooltip = show;
    obj['tooltip_'+name] = true;
    return obj;
};

后一种方法更容易调试,更适合复杂的计算。

另见,