1

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

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

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

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

谢谢!

4

2 回答 2

1

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

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

于 2012-11-04T06:32:38.597 回答
1

我正在创建一个新评论:

App.Comment.createRecord(content);

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

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

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

谢谢!

于 2012-11-15T11:56:42.323 回答