在构建一个比较大的应用程序时,我应该如何定义我的路由器?更具体地说,如果使用 requirejs 我有以下代码:
main.js
define('application',['routes/app_router'], function(router){
return Ember.Appcliation.create(
LOG_TRANSITIONS:true,
...
});
requirejs('application',function(application){
var App = window.App = application;
...
}
在routes/我有app_router.js
define('app_router',['ember'],function(){
...
});
那么我应该将 an 传递app给 myapp_router来设置App.Router.map...方法还是应该返回 a Ember.Router.map(...)?如果选择了第一个变体,那么可以肯定的是,依赖关系会发生变化。
换句话说,我应该创建一个“空”Ember.Application并将其传递给路由器以便它可以定义App.Route.map(...方法,因为它具有对this, like的引用this.route\this.resource...,还是应该调用Ember.Router.create()然后调用map它的函数,然后从模块返回 this 并将其设置为App.Router = router。