Javascript 使用木偶收集视图为每个项目创建多个视图
我有一个Marionette.CollectionView,对于某些项目模型需要创建两个视图才能在模型上运行,那么Marionette.CollectionView.buildItemView能否返回两个视图 编辑: 我不想再创建一些WrapperItemView,我现在已经有一些解决方案在运行,但我想让它更标准 我希望我的代码是这样的,有没有简单的方法让它工作Javascript 使用木偶收集视图为每个项目创建多个视图,javascript,backbone.js,marionette,Javascript,Backbone.js,Marionette,我有一个Marionette.CollectionView,对于某些项目模型需要创建两个视图才能在模型上运行,那么Marionette.CollectionView.buildItemView能否返回两个视图 编辑: 我不想再创建一些WrapperItemView,我现在已经有一些解决方案在运行,但我想让它更标准 我希望我的代码是这样的,有没有简单的方法让它工作 buildItemView: function(item){ // create 2 views based on ite
buildItemView: function(item){
// create 2 views based on item type
return [view1, view2];
},
appendHtml: function(collectionView, itemView, index){
if (itemView.type === "X" )
collectionView.$el.find(".A").append(itemView.el);
if (itemView.type === "Y" )
collectionView.$el.find(".B").append(itemView.el);
}
为什么您的itemview不充当第二个视图的父视图,您可以在itemview的initialize函数中创建第二个视图 编辑
我仍然会创建一个perent视图,这次我将使它成为2个视图的父视图,集合将创建父视图,父视图将在其中创建两个视图
这种方式对我来说更自然。问题是这两个视图应该附加到CollectionView中的不同元素,我将编辑我的问题我仍将创建一个perent视图这次我将使其成为两个视图的父视图,您将创建父视图,父视图将在其中创建两个视图。