В router.js. Консоль Firebug предупреждает, что Backbone имеет значение null. Зачем???BackboneJS + Requirejs: Магистральная ошибка
app.js
define([
'order!jQuery',
'order!Underscore',
'order!Backbone',
'order!router' // Request router.js
],
function($, _, Backbone, Router){
App = {
initialize: function() {
console.log("app.js initalize");
Router.initialize();
}
};
return App;
});
router.js
define([
'order!Underscore',
'order!Backbone'
],
function(_, Backbone){
var AppRouter = Backbone.Router.extend({
// Console shows Backbone is null here, why?
// I'm sure the config is correct.
routes: {
'*actions': "defaultAction"
},
defaultAction: function(actions){
// We have no matching route, lets just log what the URL was
console.log('No route:', actions);
}
});
var initialize = function(){
console.log("Router initialize");
var app_router = new AppRouter;
Backbone.history.start();
};
return {
initialize: initialize
};
});
Поскольку это Безразлично «Поддерживать AMD, нужно ли это использовать? Будет ли еще больше проблем при создании сборки? Спасибо за Ваш ответ. – user469652
Он отлично работает с AMD, он просто не регистрируется как модуль AMD, а затем регистрируется в глобальной области. Мы использовали requirejs и позвоночник при построении http://wunderkit.com и не можем себе представить, что не используем эти два! :) –
Вы также можете получить версию Backbone и Underscore, совместимую с AMD, здесь ... https: //github.com/amdjs – jcreamer898