我使用Marionette 3.0。构建视图,在区域中添加新的子视图
我有BlockView可能有不同数量的区域。 这些区域充满了BlockRegionViews,它们是CollectionViews(它们将在2.x中),并且这些视图呈现更多的BlockViews。 我想写一个函数,它创建一个BlockView,它的区域已经填充了(空的)BlockRegionViews,并且返回这个BlockView。
所以我写了这个代码:
var blockView = new BlockView({model: blockModel});
var regions = blockModel.get('regions')
for(var i in regions) {
var blockRegionModel = regions[i];
var blockRegionView = new BlockRegionView({model: blockRegionModel});
blockView.addRegion(blockRegionModel.get('position'), '...regiondefinition...');
var region = blockView.getRegion(blockRegionModel.get('position'));
// This is the line where i get the error.
region.show(blockRegionView);
}
return blockView;
当然我的代码是坏的。即使show函数的名字也表明它不适合我(因为我不想在这个时候显示任何视图),但在文档中我找不到这样的东西。
所以我的问题是:我应该如何构建一个视图与在其区域中初始化的其他视图,而不呈现任何视图?
CollectionViews仍然是Marionette 3.x版本的一部分,然而LayoutView和ItemView现在只是称为View(它们非常相似)。 – miphe