Ember-cli:定义app / routes /文件夹之外的路由

时间:2014-11-25 22:53:07

标签: javascript ember.js ember-cli ecmascript-6

我目前正在编写一个很大的Ember.js应用程序。我知道Ember.js非常单一,但我想从中略微偏离并创建我将插入应用程序的模块。

我对组件模块或那些东西没有问题。我的大问题是在我的Ember-cli应用程序中导入新路由。

通常我会拥有App.Router而我可以创建App.xxxRoute我是否在app/routes/my-route.jslib/myModule/routes/my-route.js中定义路线。

使用Ember-cli ES6模块语法时,考虑的路由只是来自app/routes文件夹的路由,因为没有全局范围,我无法附加来自我的路由模块到我的主要应用程序。 这有点痛苦。

我尝试了很多方面,包括尝试将我的路线手动添加到Ember.Router.router.recognizer(不起作用),以及在app/routesexport中创建路线文件我的模块中的每一个(但它创建了许多无用的文件)。

最简单的解决方案是能够将目录添加到ember-cli路径加载器或其他任何名称,但我可以接受任何建议。

非常感谢。

1 个答案:

答案 0 :(得分:1)

我将采用的方法是构建一个附加组件,如评论中所述。

也许,根据您的需要,添加一些初始化程序,将对象和任何您喜欢的东西注入应用程序中的所有路径或控制器。

请参阅:Dependency Injection & Service Lookup

有关使用初始化程序的加载项示例,您可以检查Ember Simple Auth