我正在尝试学习一些Ember.js,当我意识到一切都在变化和时刻,似乎Sproutcore 2指南中的这段代码(在Ember.js github自述文件中链接)不再起作用了:
App.userController = SC.ObjectController.create({
content: SC.Object.create({
firstName: "Albert",
lastName: "Hofmann",
posts: 25,
hobbies: "Riding bicycles"
})
});
查看ember.js源代码,似乎支持的唯一类型的控制器是arryay控制器。是否有一个已建立的最佳实践,用于在不属于数组/集合的单个模型对象和视图之间进行代理?或者人们放弃代理并直接在模型和视图对象之间设置绑定?想法?
答案 0 :(得分:10)
有计划带回ObjectController
/ ObjectProxy
。彼得和我已经开始研究here,但我们需要在Ember完全支持之前为Ember添加一些低级功能。
在此之前,您可以将Ember.Object
与content
属性一起使用。您必须在属性路径中明确引用content属性(例如App.userController.content
)。完成ObjectController
后,您就可以将控制器切换为继承控制器,并且可以将属性路径更新为未明确引用content
。
答案 1 :(得分:4)
更新:是的,Ember.ObjectController
是Ember的头等部分,最常用于代理模型的属性,以便通过模板轻松呈现。有关文档,请参阅http://emberjs.com/api/classes/Ember.ObjectController.html。
答案 2 :(得分:4)