我正在重构我的应用程序,现在我的路由器不会响应。我觉得它可能与事件的顺序有关。但那是猜测。有什么想法吗?
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();
});
});
窗口小部件/主/ 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!');
}
});
});
答案 0 :(得分:0)
我认为许多异步require
请求中的问题。
我试图在示例中更改像main.js这样的文件。
`
define(['app','widgets/main/controller'], function(App, Ctr){
App.addInitializer(function() {
app.modules.main = new Ctr;
});
});
`