访问ember中ember #each块中的动态输入值

时间:2016-04-05 03:45:14

标签: javascript ember.js handlebars.js htmlbars

我在访问组件中的输入值时遇到问题。我正在尝试在我的模板中动态创建值绑定并使用this.controller.get(“pst”+ id)访问conponent.js文件,但结果是未定义的。使用Ember 2.2

{{#each post in |pst idx|}}
    {{input value=(concat 'pst' idx)}}
{{/each}}

2 个答案:

答案 0 :(得分:0)

好吧,it works as expected,但你为什么要这样做呢?

请解释您想要存档的内容,然后我们可以提供更好的帮助。

要清楚,使用get帮助程序生成的值是不可变的。

为什么不做{{input value=pst}}之类的事情? 如果这不是一个选项,你应该在JS中构建你的数组,然后在把手中使用它!

答案 1 :(得分:0)

定义一个计算属性,将您的'post'变量包装在component.js文件中。迭代那个包装器。我认为这是产生动态价值的有效方式。

您的模板:

{{#each postWrappers as postWrapper}}
    {{input value=postWrapper.value}}
{{/each}}

你的component.js:

postWrappers : Ember.computed('post', function() { 
   //your concat code
});