问题描述
我是木偶游戏的新手,我想在CollectionView中生成CollectionView。 我读到,如果视图获取集合作为参数,则将其存储为“项” argunemt。我的问题归结为:
const { View,CollectionView } = Marionette;
const collection = new Backbone.Collection([
{name: 'Marionette.js'},{name: 'Backbone.js'}
]);
const MyView = View.extend({
el: 'body',template: _.template(`
<ul>
<% _.each(items,function(item) { %>
<li><%- item.name %></li>
<% }) %>
</ul>
`)
});
const MyCollectionView = CollectionView.extend({
childView: MyView
})
const myCollectionView = new MyCollectionView([{collection: collection}]);
myCollectionView.render();
但是它不起作用。你们可以帮我吗?
解决方法
我找到了答案! 只需添加
childViewOptions(model) {
return {collection: model.get('collection')};
},
进入MyCollectionView并更改...(项目,...,将其命名为collection,它完全符合我的要求。