Ember.js路由和连接插座

时间:2012-12-27 22:15:50

标签: javascript ember.js

我正在尝试设置Ember路由器应用程序,但是我无法使用Controller对象的connectOulet方法将视图连接到特定的出口(带名称的出口,即:{{outlet outletName}})。我已经设置了一个JSFiddle示例,有人可以告诉我我做错了什么或者实际上是怎么做的?

JSFiddle: http://jsfiddle.net/TmKwd/

1 个答案:

答案 0 :(得分:6)

嗯,我无法准确解释原因,但是ApplicationController不能定义为Ember.ObjectController,而只能定义为Ember.Controller。

<强>更新

快速调试后,这是在applicationController上调用connectOutlet时,尤其是行set(this, outletName, view);
由于outletName(在您的示例中,这是“一个”和“两个”)是applicationController中的未知属性,并且由于您将applicationController定义为ObjectController(因此包含内容属性的代理),Ember。 js尝试在内容上设置视图,这是未定义/ null。

结果,抛出了这个错误:

Uncaught Error: assertion failed: Cannot delegate set('one', <App.ViewOneView:ember208>) to the 'content' property of object proxy <App.ApplicationController:ember209>: its 'content' is undefined.