我是Ember的新手,可能在某个地方犯了一个简单的错误,但是在ember 3.2.0和3.3中打开模块统一性的简单应用中,我无法让嵌套路由(嵌套的3个级别)工作.0。
(我能够在没有模块统一的情况下在其他应用中使用相同的路由。)
在我的应用中,通过在.bashrc
中设置以下环境变量来启用模块统一:
export EMBER_CLI_MODULE_UNIFICATION='true'
export MODULE_UNIFICATION='true'
以下是我的src/router.js
的相关内容:
Router.map(function() {
this.route('peach', function() {
this.route('pear', function() {
});
});
});
这里是src/ui/routes/peach/index/template.hbs
:
peach
{{outlet}}
这里是src/ui/routes/peach/pear/index/template.hbs
:
pear
导航到http://localhost:4200/peach/pear
会导致浏览器页面空白,并显示以下错误:
jQuery.Deferred exception: this._config.collections[specifier.collection] is undefined _checkDefaultType@http://localhost:4200/assets/vendor.js:69136:11
TypeError: this._config.collections[specifier.collection] is undefined
为什么在启用模块统一时这些路由不起作用,如何使它们起作用?
答案 0 :(得分:0)
您的路由文件(而不是模板文件)可能有问题。
但是,正如您所注意到的,模块统一仍在进行中,尚无法大量使用。我们都期待着它,但是就目前而言,除非您想生活在不断发展的边缘(这可能会伤害很多人),否则可能值得一试...