我正在使用最新的第4版预制版。在我的应用程序中,我有一些未连接到路由器的部分,但我希望将所有应用程序保持为一种样式,并使用ArrayController
和Em.CollectionView
。
我试着做这样的事情:
var controller = Em.ArrayController.create({content: Em.A()});
Em.CollectionView.create({
controller: controller
});
controller.pushObject(Em.Object.create({
title: 'test'
}))
然后我收到一个错误,“控制器”没有容器属性。
可以在没有ArrayController
的情况下使用Em.Router
吗?
答案 0 :(得分:1)
是的,这是可能的。我无法重现您指定的错误,但必须进行一些更改才能使工作正常。
var controller = Em.ArrayController.create({content: Em.A()});
controller.pushObject(Em.Object.create({title: 'dr plimpton'}));
controller.pushObject(Em.Object.create({title: 'raj'}));
controller.pushObject(Em.Object.create({title: 'howard'}));
controller.pushObject(Em.Object.create({title: 'leonard'}));
var myView = Ember.CollectionView.create({
tagName: 'ul',
content: controller,
itemViewClass: Ember.View.extend({
template: Ember.Handlebars.compile("{{view.content.title}}")
})
});
myView.appendTo('body');
工作示例(基于ember-1.0.0-pre.4):http://jsbin.com/eticuw/1/edit