在构建一个比较大的应用程序时,我应该如何定义我的路由器?更具体地说,如果使用 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
。