0

我有一个问题:我添加了一个对象,我希望在嵌套路由的上下文中将它“实时”附加到我的对象列表中。在 Ember.js 上下文中,我不想通知此更改,它应该自动更新。

可能吗?

给定这个路由器:

App.Router.map ->
  @resource "raw_materials", ->
    @route 'new'

和这些模板:

raw_materials.hbl

{{#linkTo raw_materials.new}}CREATE{{/linkTo}}
<ul>
  {{#each controller}}
  <li>
    {{name}} - {{quantity}}
  </li>
{{outlet}}

raw_materials/new.hbl

{{view Ember.TextField valueBinding="name"}}
{{view Ember.TextField valueBinding="quantity"}}
<a {{action 'create' this}}>V</a>

控制器:

App.RawMaterialsNewController = Ember.ArrayController.extend
  create: (params)->
    App.RawMaterial.createRecord({
      name: params.name,
      quantity: params.quantity
    })
    @get("store").commit()

所以结果是这样的: 结果

更新:我目前的路线是:

App.RawMaterialsRoute = Ember.Route.extend
  model: -> App.RawMaterial.find({})

如果我改变它

App.RawMaterialsRoute = Ember.Route.extend
  model: -> App.RawMaterial.find()

问题解决了。

我使用的原因.find({})是它给了我 isLoaded 事件,而.find()数组 isLoaded 总是正确的,即使它没有加载

我能做些什么?

谢谢

4

0 回答 0