ember.js仍然支持ObjectController吗?如果不是,用什么替代它

Does ember.js still support ObjectController? If not, what replaces it?

本文关键字:什么 如果不 js 支持 ObjectController ember      更新时间:2023-09-26

我正在尝试学习一些Ember.js,虽然我意识到一切都在不断变化,但Sproutcore 2指南中的这段代码(在Ember.jsgithub自述文件中链接到)似乎已经不起作用了:

   App.userController = SC.ObjectController.create({
        content: SC.Object.create({
        firstName: "Albert",
        lastName: "Hofmann",
        posts: 25,
        hobbies: "Riding bicycles"
      })
    });

查看ember.js源代码,似乎唯一支持的控制器类型是arryay控制器。对于不属于数组/集合的单个模型对象和视图之间的代理,是否有既定的最佳实践?还是人们放弃代理,直接在模型和视图对象之间设置绑定?想法?

有计划恢复ObjectController/ObjectProxy。Peter和我已经开始在这里工作了,但我们需要在Ember中添加一些较低级别的功能,然后才能完全支持它。

在此之前,您可以将Ember.Objectcontent属性一起使用。您必须在属性路径(例如App.userController.content)中显式引用内容属性。ObjectController完成后,您可以将控制器切换为从其继承,并且可以更新属性路径以不显式引用content

更新:是的,Ember.ObjectController是Ember的一级部分,最常用于代理模型的属性,以便于模板渲染。看见http://emberjs.com/api/classes/Ember.ObjectController.html以获取文档。

它现在在master中,请参阅:https://github.com/emberjs/ember.js/commit/c6954ba40ab9f007dd499634bfccf40fc31a73d7