1

アプリをリファクタリングしていますが、ルーターが応答しなくなりました。一連の出来事と何か関係があるのではないかと思います。しかし、それは推測です。何か案は?

init.js

define(function(require) {
    'use strict';
    var app = (require('app')()),
        Backbone = require('backbone');
    app.modules = {};
    require('modules/main/main');
    app.on('initialize:after', function() {
        if (Backbone.history) {
            Backbone.history.start();
        }
    });
    app.start();
});

モジュール/メイン/main.js

define(function(require) {
    'use strict';
    var app = (require('app')()),
        MainController = require('widgets/main/controller');
    app.addInitializer(function() {
        app.modules.main = new MainController();
    });
});

widgets/main/controller.js

define(function(require) {
    'use strict';
    var app = (require('app')()),
        Marionette = require('marionette'),
        View = require('./view');
    return Marionette.Controller.extend({
        initialize: function(options) {
            this.router = new Marionette.AppRouter.extend({
                appRoutes: {'apps': 'showApp'},
                controller: this
            });
        },
        showApp: function() {
            console.log('route fired!');
        }
    });
});
4

1 に答える 1

0

require多くの非同期リクエストの問題だと思います。例の main.js のようなファイルを変更しようとします。

`

define(['app','widgets/main/controller'], function(App, Ctr){

    App.addInitializer(function() {
        app.modules.main = new Ctr;
    });

});

`

于 2014-01-13T06:50:06.577 に答える