我目前正在编写一个大型 Ember.js 应用程序。我知道 Ember.js 相当单一,但我想稍微偏离这一点并创建我将插入到我的应用程序中的模块。
我对纯组件模块或类似的东西没有任何问题。我的大问题是在我的 Ember-cli 应用程序中导入新路线。
通常我会有我的 App.Router
并且无论我在 app/routes/my-route.js 中定义路由,我都可以创建
或在 App.xxxRoute
lib/myModule/routes/my-route.js
中。
使用 Ember-cli ES6 模块语法,考虑的路由仅是来自 app/routes
文件夹的路由,并且由于不再有全局范围,我无法附加路由从我的模块到我的主应用程序。
这有点痛苦。
我尝试了很多方法,从尝试手动将路由添加到 Ember.Router.router.recognizer
(不起作用)到在 app 中创建路由文件/routes
并从我的模块中为每个模块导出
(但它会创建很多无用的文件)。
最简单的解决方案是能够将目录添加到 ember-cli 路径加载器或任何名称,但我愿意接受任何建议。
非常感谢。
最佳答案
我采取的方法是构建一个附加组件,如评论中所述。
也许,根据您的需要,添加一些初始化程序,将对象和您喜欢的任何内容注入(inject)到应用程序中的所有路由或 Controller 中。
参见:Dependency Injection & Service Lookup
有关使用初始值设定项的附加组件示例,您可以查看 Ember Simple Auth
关于javascript - Ember-cli : define routes outside of the app/routes/folder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27138311/