我需要在ngClass中使用表达式和值:
表达式为:ngClass="{'ns-show' : notif.isActive, 'ns-hide' : !notif.isActive}"
值为:'ngClass =“[notif.type,notif.effect]”
此处notif.type
和notif.effect
包含类的名称,例如ns-growl
。
我尝试ngClass="{'ns-show' : notif.isActive, 'ns-hide' : !notif.isActive}[notif.type, notif.effect]"
,但收到错误:
Syntax Error: Token ',' is unexpected, expecting []] at column 50 of the expression
正确的语法是什么?
答案 0 :(得分:1)
您可以对表达式使用简单绑定,并为映射保留ng-class,这将组合您的类:
<div class="{{notif.type}} {{notif.effect}}" ng-class="{'ns-show' : notif.isActive, 'ns-hide' : !notif.isActive}">
答案 1 :(得分:-1)
编辑:因为Angular没有&#39; ng-show&#39;上课,我回到原来的答案
ng-class="{ng-show:notif.isActive, ng-hide:notif.isActive, notif.effect:ture, notif.type:true}"
其他可行的解决方案是
ng-hide="!notif.isActive" ng-class="[ng-show, notif.type, notif.efect]"