在Ember.js中更新支持的数组rc1不会传播到视图

时间:2013-02-27 05:23:05

标签: ember.js

我正在尝试将部分构建的UI升级到最新的Ember.js rc1,并且由于API的显着改变,它已经变成了一个非常大的重写作业。那里(和这里)的大部分信息都变得毫无用处。我不得不多次重复阅读文档以使部分工作,但有很多松散的结果。这是一个大问题。视图不会像以前版本那样更新。我遗漏了与rerender,{{outlet}}或其他我不知道的事情有关的事情。灰烬指南似乎需要更新。

模板非常简单:

<script type="text/x-handlebars" data-template-name="index">
  <button {{action "addOne"}}>add one</button>
  <ul>
  {{#each item in controller}}
    <li>{{item.title}}</li>
  {{/each}}
  </ul>
</script>

单击此按钮时,该按钮会向备用阵列添加新元素。控制台日志显示阵列正在增长,但模板不会更改。 Here is a jsfiddle来说明我已经走了多远。任何人都可以找出需要添加的内容吗?

1 个答案:

答案 0 :(得分:4)

我修改了你的例子以突出我们在Ember中使用数组的事实,我们正在使用Ember数组(Ember.A()Em.A(),如果你想明确这个事实)。根据我的理解,您可以使用方法Em.A().addObjectEm.A().removeObject来使用Ember.Object getter和setter方法来实现基本功能(即.get()&amp; .set()

为了让Ember应用程序正确观察,使用Ember吸气剂和定位器非常重要。

A modified version of your fiddle.