javascript - Marionette LayoutView 不渲染

标签 javascript backbone.js marionette

这是我的布局 View :

define(["marionette", "lodash", "text!home/template.html"],
function(Marionette, _, templateHTML) {

    var HomeView = Marionette.LayoutView.extend({

        template: _.template(templateHTML),

        regions: {
            ad: ".adspace",
            products: ".products"
        }

    });

    return HomeView;
});

这是我的 app.js:

define(["marionette", "backbone", "router", "home/view"],
function(Marionette, Backbone, Router, HomeView) {
    'use strict';

    var App = new Marionette.Application();

    App.on('start', function() {
        Backbone.history.start();
        new HomeView();
    });

    return App;
});

这是我的 router.js

define(["backbone", "home/view"], function(
    Backbone,
    HomeView
){
    'use strict';

    var Router = Backbone.Router.extend({
        routes: {
            "": "index"
        },

        index: function() {
            console.log("HEYEEY");
            return new HomeView().render();
        }
    });

    return new Router();
});

当我尝试在浏览器中查看页面时,布局 View 未呈现。不确定我在这里做错了什么

最佳答案

尝试在布局 View 上定义一个 el 属性:

var HomeView = Marionette.LayoutView.extend({
    el: "#dom-element", 
    template: _.template(templateHTML),

    regions: {
        ad: ".adspace",
        products: ".products"
    }
}); 

或者使用区域来显示布局 View :

var region = new Marionette.Region({"el": "#container"}); 
var layoutView = new HomeView(); 
region.show(layoutView); 

这应该可行,因为 LayoutViews 是从常规 Marionette Itemviews 扩展而来的。

关于javascript - Marionette LayoutView 不渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31140759/

相关文章:

javascript - WordPress NinjaForms JavaScript API 提交前

javascript - 是否有可能禁用 ionic 2 中的按钮?

javascript - Marionette.js - 我可以检测 onAppend 吗?

backbone.js - 如何构建 Backbone Marionette 应用程序?

backbone.js - 如何根据模型 javascript 数组属性正确显示 Backbone Marionette Collection View ?

javascript - 使用 Backbone.js 或 Marionette.js 检测何时从页面中删除 View

javascript - 如何通过 jquery 在 Web 应用程序中创建字符串资源管理器系统?

javascript - 获取 SVG 元素的最后一个子元素高度

javascript - 在此代码片段中,为什么 "this"最终绑定(bind)到窗口对象而不是数组 b?

javascript - 单击按钮后如何清除backbone.js 中的文本字段?