Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 把手条件类属性_Ember.js_Handlebars.js - Fatal编程技术网

Ember.js 把手条件类属性

Ember.js 把手条件类属性,ember.js,handlebars.js,Ember.js,Handlebars.js,使用EmberJS/Handlebars,只有当条件为true时,如何才能将类添加到元素中 <div {{#if isSearching}}class="foo"{{/if}}></div> 像这样,但是伪代码更少,更真实。这不起作用,因为{{{if}}助手将在HTML中创建标记。改为这样做: <div {{bind-attr class="isSearching:foo"}}></div> 您必须使用带有布尔条件的{{bind attr}

使用EmberJS/Handlebars,只有当条件为true时,如何才能将类添加到元素中

<div {{#if isSearching}}class="foo"{{/if}}></div>


像这样,但是伪代码更少,更真实。

这不起作用,因为
{{{if}}
助手将在HTML中创建标记。改为这样做:

<div {{bind-attr class="isSearching:foo"}}></div>

您必须使用带有布尔条件的
{{bind attr}
助手,您可以

在您的情况下,如果isSearching属性位于控制器中,则只需执行以下操作:

<div {{bind-attr class="isSearching:foo"}}></div>

您可以在这把小提琴中看到整个代码:

{{bind attr}}}is。您可以在Ember 1.10及更高版本中使用新的更好的,如下所示:

<div class="{{if isSearching 'foo'}}"></div>    


好吧,这很有效。您可以将类列表作为模板数据变量发送,如果希望在模板之外处理这些内容,可以使用它。或者您可以使用自定义帮助器方法。。。但实际上,你得到的是更简单的方法。@SimonBoudrias,但它不起作用。它将转义if语句之后的所有属性。bindAttr是“旧”余烬语法,顺便说一句(在较新的版本中不使用)。(在新版本中称为bind attr)指向指南的链接已断开。@adam这是针对余烬1.11的