我想将组件的名称添加到Ember js。
中的URL示例:
如果主URL是:localhost:4200 / home, 然后在家里,如果我调用/重定向到一个组件(例如 - abc),则应该追加URL:
本地主机:4200 / ABC 要么 本地主机:4200 /家庭/ ABC
答案 0 :(得分:1)
如果主URL是:localhost:4200 / home,那么在家里,如果我 调用/重定向到组件(比如 - abc),URL应该被追加:
如何调用/重定向到ember中的组件?如果你有一些hacky方式,那么我会鼓励你不要这样做。 在Ember中,路由器将当前URL与您已定义的路由匹配。
如果您获得了/home/abc
网址路径,则表示您已将abc
路由嵌套在home
路由中。
Router.map(function() {
this.route('home', function() {
this.route('abc');
});
});
如果您知道所有路线都将在归属路线下,那么您可以手动定义它。假设您不知道或将要发生什么,请转到URL中的defining the dynamic segments。
答案 1 :(得分:0)
您可以通过{{component}}
助手来完成。
您需要为home定义动态路径,并通过model
hook将组件名称从url发送到home controller。
以下是解决方案的基本部分。
//router.js
this.route('home', {path: 'home/:cmp'});
//routes/home.js
model(params){
return params.cmp;
}
//templates/home.hbs
{{component model}}
请查看this tiwddle