Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.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

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
Javascript 车把条件样式属性_Javascript_Ember.js_Handlebars.js - Fatal编程技术网

Javascript 车把条件样式属性

Javascript 车把条件样式属性,javascript,ember.js,handlebars.js,Javascript,Ember.js,Handlebars.js,我正在使用ember 1.8.1 控制器有一个属性isDisplay 在Handlebar中,我这样实现,它可以工作,但代码太长 {{#if isDisplay}} <div class="form-group"> </div> {{ else }} <div class="form-group" style="display:none;"> </div> {{/if}} {{{#if isDisplay} {{e

我正在使用
ember 1.8.1

控制器有一个属性
isDisplay

在Handlebar中,我这样实现,它可以工作,但代码太长

{{#if isDisplay}}
    <div class="form-group">
    </div>
{{ else }}
    <div class="form-group" style="display:none;">
    </div>
{{/if}}
{{{#if isDisplay}
{{else}
{{/if}
我试着使用条件,像这样,但它不工作

<div class="form-group" {{bind-attr class="!isDisplay:'display:none;'"}}>
</div>

更新的答案(感谢mukilane):

这不起作用,因为标记中的
{{{{}}…{{{/}}
无效

<div class="form-group" {{#unless isDisplay}}style="display:none;"{{/unless}}></div>

确实如此

<div style={{unless isDisplay "display: none;"}}></div>

一个简单的解决方案是

<div style={{unless isDisplay "display: none;"}}></div>

正如@mukoilane所建议的,最安全的方法是切换CSS类。如果您使用的是引导,那么可以利用
d-none

<div class="form-group {{unless isDisplay "d-none"}}">
  ...
</div>

...

你就不能这么做吗?
?你使用的是2014年发布的一个版本的Ember.js(原文如此!),已经多年不受支持了<代码>{{bind attr}}在2015年发布的1.13中被弃用(原文如此!)。我强烈建议升级。清晰:我认为应该是
。但是,它仍然不起作用。错误消息:
无法读取函数
hydrateMorphs
中null的属性'parentNode',在标记中使用块{{}…{/}无效,并将抛出错误。@mukilane这不是真的,我的朋友。请参阅。这不起作用。与Clarity的注释相同的结果是,一个错误
无法读取函数
中null
的属性“parentNode”
,这仍然不起作用。错误消息:
未捕获类型错误:无法在字符串“display:none;”上创建属性“fn”
<div class="form-group {{unless isDisplay "d-none"}}">
  ...
</div>