对于Ember.js中的任何视图,我们需要创建具有适当名称的控制器才能使用此控制器,但ContainerView
中的视图不是这种情况。
查看(在ContainerView内):
App.ChildView = Ember.View.extend({});
控制器:
App.ChildController = Ember.ObjectController.extend({
init: function () {
alert('Hell no! I\'m not going to init!');
return this._super();
}
});
以上不起作用......
this.set('controller', App.ChildController.create())
(内部视图)之类的解决方案不是一个选项,因为Ember.Evented
,needs
可能还有更多内容不起作用。
以下是(非)工作示例:http://jsfiddle.net/wbednarski/XaPSR/
任何帮助表示赞赏!
答案 0 :(得分:1)
对于Ember.js中的任何视图,我们需要创建具有适当名称的控制器才能使用此控制器
我不确定这个前提是否正确。 ContainerView是一个非常低级的视图库,它对控制器一无所知。它可能用于创建小的窗口小部件或组件,在这种情况下,子视图将没有自己的控制器。如果您希望将ContainerView中的视图绑定到它们自己的控制器,这表明ContainerView不适合您正在尝试解决的问题。
相反,请考虑使用{{render}}
和{{each}}
等手柄帮助器。