EmberJs出口内有多个嵌套路线

问题描述 投票:0回答:1

我没有严格理解EmberJS中的插座和渲染模板。到目前为止,我一直在做CRUD操作,或者我的路线没有像这里那样多次嵌套,所以我还没有遇到过这个问题。在父路线中使用{{outlet}}就足够了。

问题出在我以前的方法上。当我访问routes admin/*时,一切正常,但当我试图进入例如admin/organization/{id}/user它呈现了我想要避免的admin/organization模板。我想这些事情可以在renderTemplate(中使用route.js函数来完成,但我无法解决这些问题。

我在[twiddle]重建了我的路线结构

有人可以向我解释一下吗?

ember.js ember-cli
1个回答
4
投票

嵌套路由始终具有嵌套模板。要解决此问题,您可以使用index路由,默认情况下存在于每个级别。模板的结构如下:

-app
--templates
---admin
----organization
-----index.hbs //template for admin/organization/index route, url: /admin/organization
-----user.hbs //template for admin/organization/user route, url: /admin/organization/user
----index.hbs //template for admin/index route, url: /admin

请注意,如果某个模板文件不存在(在我的示例app/templates/admin.hbs中,app/templates/admin/organization.hbs不存在),它与.hbs文件相同,其中只有{{outlet}}

© www.soinside.com 2019 - 2024. All rights reserved.