javascript - marionette 应用程序中的 require.js 循环

标签 javascript requirejs marionette

我正在启动一个 Marionette 应用程序,并尝试构建它。所以现在我有:

define(["marionette", "handlebars", "routes"], function(Marionette, Handlebars, Route){
    var App = new Marionette.Application();
    ...
    App.addRegions({
        header: "#header_region",
        ...
    });

    App.addInitializer(function(options){
        ...
        new Route();
        Backbone.history.start();
    });

    return App;
});

我的路线如下:

define(["marionette", "app", "header/view"], function(Marionette, App, headerView){
    var Route = Backbone.Marionette.AppRouter.extend({
        routes : {
            '' : 'home'
        },
        home: function(){
            var header_view = new headerView();
            App.header.show(header_view);
            ...
        }
    });
    return Route;
});

显然,我在 App.header.show(header_view) 的依赖项中有一个循环。解决的常用方法是什么?您如何构建 Marionette 应用程序?

最佳答案

这是一个很好的例子,在构建我的第一个 Marionette 应用程序时帮助我继续前进:https://github.com/BoilerplateMVC/Marionette-Require-Boilerplate/tree/master/public/js/app

当前设置路由文件的方式是实现此目的的主要方式。您应该创建一个 Marionette Controller 来响应应用程序路由。

此外,您还会看到此人创建 init 文件来指定所有启动逻辑(指定全局静态变量并实例化要使用的 Controller 和路由器)。

希望这有帮助!

关于javascript - marionette 应用程序中的 require.js 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25619974/

相关文章:

javascript - 当页面需要时,Mechanize 忽略 Javascript

javascript - 如何在 Angular 5 组件中有条件地加载 templateUrl html 文件

javascript - 使用 require.js 加载 spin.js

javascript - 使用 requirejs 和 typescript 的 Node 模块

backbone.js - 我如何确定 Marionette View 已被完全破坏?

handlebars.js - 在 Rails Asset Pipeline 中使用带有 Marionette 的外部 Handlebars 模板

javascript - 链接 Javascript 构造函数

java - 从剪贴板获取打印屏幕图像

windows - 应用程序无法在本地上下文中加载远程 Web 内容

javascript - 了解 Backbone 和 Marionette View 生命周期