1

我有一个控制器,它是一个 ArrayProxy 并包含一些计算数组。

在咖啡脚本中,我的控制器如下所示:

MyApp.parentController = Ember.ArrayProxy.create
  content: []
  mothers: (->
    mothers = (person for person in @get("content") when person.sex == 0)
  ).property("content")
  fathers: (->
    fathers = (person for person in @get("content") when person.sex == 1)
  ).property("content")

这很好用,当我从命令行请求'MyApp.parentController.get("mothers")'时,我得到了预期的数组。

现在我想在我的文档中显示该集合,因此我想遍历母亲列表:

<div id="parent-mothers-pool">
  {{#each MyApp.parentController.mothers}}
     {{#view MyApp.ParentView contentBinding="this"}}{{/view}}
  {{/each}}
</div>

这不起作用,实际上完全挂起应用程序,永远旋转,甚至没有向控制台打印任何错误。

如您所料,将“.mother”从#each 车把上正确显示所有父母。但是把它放在borks它。

如何迭代这个计算数组?

4

1 回答 1

0

您应该在视图中定义一个绑定ParentMothersPool,指向控制器的mothers属性:

MyApp.EnclosingView = Ember.View.extend
    mothersBinding: 'MyApp.parentController.mothers'

然后在模板中:

{{#each mothers}}
    ...
于 2012-04-04T14:02:49.050 回答