随着 bind-attr
的弃用,取而代之的是 handlebar if
语句用于类名绑定(bind);如何将多个类名绑定(bind)到一个元素?
文档指定了单个绑定(bind)类名的语法,但没有指定多个:
http://guides.emberjs.com/v1.13.0/templates/binding-element-class-names/
<div class={{if isEnabled 'enabled' 'disabled'}}>
Warning!
</div>
结果是(当 isEnabled=true
时):
<div class="enabled"}}>
Warning!
</div>
但是如果我需要将其他类名绑定(bind)到这个元素上怎么办?我试过:
<div class={{if isEnabled 'enabled' 'disabled'}}{{if isNew 'new' 'old'}}>
Warning!
</div>
and(带分号和不带分号)...
<div class={{if isEnabled 'enabled' 'disabled'; if isNew 'new' 'old'}}>
Warning!
</div>
第一个是后进获胜,第二个甚至没有编译。
最佳答案
在 {{if}}
助手周围加上引号:
<div class="{{if isEnabled 'enabled' 'disabled'}} {{if isNew 'new' 'old'}}">
</div>
您也可以编写一个助手来为您完成一些工作。
作为引用,1.11 release blog post 中提到了这一点.
关于javascript - 我如何在 Ember 1.13 中绑定(bind)多个类名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31819233/