Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.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/3/templates/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
Javascript 主干和木偶,ItemView不渲染,如何?_Javascript_Templates_Backbone.js_Views_Marionette - Fatal编程技术网

Javascript 主干和木偶,ItemView不渲染,如何?

Javascript 主干和木偶,ItemView不渲染,如何?,javascript,templates,backbone.js,views,marionette,Javascript,Templates,Backbone.js,Views,Marionette,由于某些原因,ItemView无法渲染。以下是我的设置: 控制器 test: function () { require(['application', 'collections/collection-test', 'views/collection/view-test'], function (App, CollectionTest, ViewTest) { var collectionTest = new CollectionTest(

由于某些原因,ItemView无法渲染。以下是我的设置:

控制器

test: function () {
            require(['application', 'collections/collection-test', 'views/collection/view-test'], function (App, CollectionTest, ViewTest) {
                var collectionTest = new CollectionTest();

                App.regionTest.show(new ViewTest({
                    collection: collectionTest
                }));
            });
        },
集合视图

define(['backbone','views/item/itemview-test'],
function (Backbone, ItemviewTest) {
    'use strict';
    return Backbone.Marionette.CollectionView.extend({
        tagName: 'ul',
        initialize: function () {},
        itemView: ItemviewTest,
        ui: {},
        events: {},
        /* on render callback */
        onRender: function () {
            console.log(this.$el);
        }
    });
});
项目视图

define(['backbone','hbs!tmpl/item/itemview-test_tmpl'],
function (Backbone, ItemviewTestTmpl) {
    'use strict';
    return Backbone.Marionette.ItemView.extend({
        tagName: 'li',
        initialize: function (options) {},
        template: ItemviewTestTmpl,
        ui: {},
        events: {},
        onRender: function () {
            console.log(this.$el);
        },
    });
});
我可以看到该地区正在增加,但没有李

如果在eh控制器中将“视图/集合/视图测试”替换为“视图/项目/项目视图测试”,我可以呈现li,但现在我无法获得ul

另外,如果我在集合中输入console.lognew ItemviewTest,我可以看到带有$el:'li'标记的ItemView对象,但由于某些原因,它没有添加到html中

有什么想法吗?

将为父集合视图集合中的每个模型呈现一个ItemView。由于集合为空,因此没有要渲染的模型

尝试添加模型:

var collectionTest = new CollectionTest([{ name: 'Patrioticcow' }]);

App.regionTest.show(new ViewTest({
  collection: collectionTest
}));