使用EmberJS / Handlebars,只有条件为真时,如何才能向元素添加类?
<div {{#if isSearching}}class="foo"{{/if}}></div>
就像那样,但是更少的伪代码和更多的现实。
答案 0 :(得分:50)
{{bind-attr}}是deprecated。您可以在Ember 1.10及更高版本中使用新的更好的bound attribute syntax,如下所示:
<div class="{{if isSearching 'foo'}}"></div>
答案 1 :(得分:9)
你必须使用布尔条件的{{bind-attr}}
助手,你可以read the guide about this。
在您的情况下,如果isSearching属性在控制器中,您可以执行以下操作:
<div {{bind-attr class="isSearching:foo"}}></div>
你可以在这个小提琴中看到整个代码:http://jsfiddle.net/NQKvy/240/
答案 2 :(得分:7)
这不起作用,因为{{#if}}
帮助程序会在HTML中创建标记。这样做:
<div {{bind-attr class="isSearching:foo"}}></div>