牵线木偶-将CollectionView与View结合在一起

问题描述

我是木偶游戏的新手,我想在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,它完全符合我的要求。