我是Backbone的新手,这让我发疯: 我正在使用骨干和木偶。 以下是一些代码示例:
var Backbone = require('backbone'),
Marionette = require('backbone.marionette'),
FastClick = require('fastclick');
var MainModule = require('./modules/main'),
HomeModule = require('./modules/home');
var app = new Marionette.Application();
app.vent.on('ready', function(e) {
Backbone.history.start({
pushState: true, // Use HTML5 history if available
hashChange: false, // or refresh pages if it isnt supported natively
root: '/',
})
});
和我的/module/home/index.js:
module.exports = function HomeModule(Module, App, Backbone, Marionette, $, _) {
// Register Sub modules
App.module('Home', LayoutModule);
App.module('Home', WallModule);
Module.Router = Marionette.AppRouter.extend({
appRoutes: {
'/': 'home',
'social-wall': 'socialwall'
}
});
var controller = {
home: function() {
App.mainRegion.show(new Module.Layout());
},
socialwall: function() {
controller.home();
App.mainRegion.currentView.scrollToSocialWall();
}
};
App.addInitializer(function() {
new Module.Router({ controller: controller });
});
};
问题是Backbone.history.start不会触发任何内容。如果我正确理解代码,history.start()应该在HomeModule中找到'/'路由并触发相关的函数......我错了吗? 为什么这不起作用?????
事先,谢谢
答案 0 :(得分:0)