Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js 在marionette.itemview上传递集合无效_Backbone.js_Marionette - Fatal编程技术网

Backbone.js 在marionette.itemview上传递集合无效

Backbone.js 在marionette.itemview上传递集合无效,backbone.js,marionette,Backbone.js,Marionette,我正在制作一个backbone.marionete演示,用于在项目视图上实现集合。 但它没有正确渲染。我已经创建了一个演示,在我将集合传递给它之后,视图不会在其中呈现 var view2 = new MyItemsView({ collection: options.collection }); app.mainRegion.show(view2); 以下是JSFIDLE: 如何处理此问题?请改用CompositeView或CollectionView var te

我正在制作一个backbone.marionete演示,用于在项目视图上实现集合。 但它没有正确渲染。我已经创建了一个演示,在我将集合传递给它之后,视图不会在其中呈现

 var view2 = new MyItemsView({
        collection: options.collection
    });
app.mainRegion.show(view2); 
以下是JSFIDLE:
如何处理此问题?

请改用CompositeView或CollectionView

var template = _.template($('#some-template').html());
var MyItemView = Marionette.ItemView.extend({
    tagName: 'li',
    template: template
});

var MyItemsView = Marionette.CollectionView.extend({
    tagName: 'ul',
    itemView: MyItemView
});
和模板:

<script id="some-template" type="text/html">
    <%- title %>
</script>

下面是一个您想要做的示例:

即:

var MyItemView = Marionette.ItemView.extend({
    template: '#some-template',
    tagName: "li"
});

var MyItemsView = Marionette.CollectionView.extend({
    itemView: MyItemView,
    tagName: "ul"
});
然后

    var view2 = new MyItemsView({
        collection: options.collection
    });
    app.mainRegion.show(view2);
让木偶在集合上迭代,为您呈现视图。这就是它的角色。否则,用木偶代替普通的脊梁就没有什么动力了


在这个免费的pdf中,还有一个更全面的逐步介绍,介绍如何用木偶展示收藏:

是的,谢谢。它起作用了。我们是否可以使用迭代器函数将模型项迭代到模板中以显示它们。。?