用ember和ember-cli编辑Handlebars模板

嘿,所以我的问题可能很简单,因为我是全新的烬和烬,从我理解你只需编辑一个应用程序HBS模板包含的HTML,IE浏览器。 应用程序/模板/ settings.hbs

然而,我的问题是,当我编辑这些文件之一,重新启动整个堆栈,没有变化反映 – 此外,我基本上只是试图创build一个已经创build的堆栈,通过inputif条件来find控制器名称并显示内容,如果它匹配什么即时通讯寻找,

例如

{{#if controller.name == "settings"}} // diff lis {else} // normal lis {#endif} 

最重要的是在这里,我对HBS模板所做的任何改变似乎都没有被反映出来,为什么?

除了@Oren的回答,如果你使用的是烬1.10,你可以利用句柄子expression式,并编写自己的eq助手,可以在更多的情况下使用。 例如:

 Ember.Handlebars.registerBoundHelper('eq', function(left, right) { return left === right; }); 

然后在你的模板中

 {{#if (eq name "settings") }} // diff lis {{else}} // normal lis {{/if}} // ... {{#if (eq something otherstuff) }} // show this {{else}} // show that {{/if}} 

现场示例http://emberjs.jsbin.com/mezoxiqavi/1/edit

把手没有在你张贴的forms的平等帮手。 (请参阅此列表以获取所有内置助手的列表。)

相反,你需要做什么来使你的代码工作是在你的控制器上创build一个属性:

 IsNameSettings: function(){ return this.get('model.name') === 'settings'; }.property('model.name'); 

并且改变你的模板使用这个属性(注意,你也有{{/endif}}需要改变为{{/if}} [见上面的链接]):

 {{#if controller.IsNameSettings}} // diff lis {else} // normal lis {/if} 

查看是否在将句柄模板更改为有效的语法之后,我正在等待实时重新加载时描述页面实时更新的结果。 确认保存这些更改后,您会看到来自ember-cli输出,表示已成功构build。 沿着以下线路检查terminal的输出:

 version: 0.1.12 Livereload server on port 35729 Serving on http://0.0.0.0:4200/ Build successful - 8891ms.