我不确定如何在模块化(RequireJs)主干环境中使用命名空间。
我已经想过它会是什么样子,但我完全不确定这是否是正确的方法。
app.js(由 main.js 执行)
define('App', ['underscore', 'backbone', 'Router'], function( _, Backbone, Router){
function initialize(){
var app = {}; // app is the global namespace variable, every module exists in app
app.router = new Router(); // router gets registered
Backbone.history.start();
}
return { initialize: initialize }
});
消息.js
define('MessageModel', ['underscore', 'backbone', 'App'], function(_, Backbone, App){
App.Message.Model; // registering the Message namespace with the Model class
App.Message.Model = Backbone.Model.extend({
// the backbone stuff
});
return App;
});
这是正确的方法还是我完全走错了路(如果是,请纠正我!)