ember.js模板上下文w / connectOutlet

时间:2012-08-12 23:59:32

标签: ember.js

当我这样做时

var bob = App.MyModel.create().setProperties({ name: "bob marley" });
router.get('applicationController').connectOutlet('my', bob);

MyModel的实例成为content实例的MyController属性。根据我在指南中阅读的内容,控制器实例成为MyView呈现的把手模板的上下文。

这是否意味着我总是必须在模板中使用content.作为模型属性的前缀?

<h1>{{content.name}}</h1>

有什么我想念的,或者这是正确的做法吗?

1 个答案:

答案 0 :(得分:2)

如果App.MyController延伸Ember.ObjectController,那么您应该可以直接使用{{name}}。这是因为Ember.ObjectController扩展了Ember.ObjectProxy,因此不需要content引用。

但是,如果您使用的是Ember.Controller,则必须像使用content.一样为属性添加前缀。有关详细信息,请参阅最近提交的@ trek controller documentation