Ember JS:绑定视图循环,以便在内容更改时自动更新

时间:2012-11-04 03:19:00

标签: ember.js handlebars.js

我在Ember视图模板中运行循环。

在其中一个主视图中,我遍历控制器内容,然后遍历其中的一些内容:

{{#each version in versions}}
  {{#each comment in version.comments}}</p><br/>
    <p>{{comment.text}}</p>
  {{/each}}
{{/each}}

当我在代码中的其他位置创建App.Comment.createRecord(content);的新评论时,模板不会自动更新。我如何'轻推'它以便重新呈现内容?

谢谢!

2 个答案:

答案 0 :(得分:1)

运行createRecord时,版本对象上的hasMany关系数组可能未自动更新。在关系数组中手动​​添加创建的注释对象,模板应该正确更新。

version.get("comments").addObject(comment)

答案 1 :(得分:1)

我正在创建一条新评论:

App.Comment.createRecord(content);

......实际上我应该使用:

version.get('comments').createRecord(content);

通过将createRecord范围限定为正在渲染的同一对象,Ember将自动获取对象已更改并将按预期更新视图。

谢谢!