Ember.js 如何将url附加到组件';余烬js中的s名称

Ember.js 如何将url附加到组件';余烬js中的s名称,ember.js,Ember.js,我想在Ember js中将组件的名称添加到URL中 例如: 如果主URL为:localhost:4200/home, 然后在home中,如果我调用/重定向到某个组件(比如-abc),则URL应该附加: 本地主机:4200/abc 或 localhost:4200/home/abc您可以通过{{component}helper来完成 您需要为home定义动态路径,并通过modelhook将组件名称从url发送到home controller 以下是解决方案的基本部分 //router.js thi

我想在Ember js中将组件的名称添加到URL中

例如:

如果主URL为:localhost:4200/home, 然后在home中,如果我调用/重定向到某个组件(比如-abc),则URL应该附加:

本地主机:4200/abc 或
localhost:4200/home/abc

您可以通过
{{component}
helper来完成

您需要为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}}
请看一看

如果主URL是:localhost:4200/home,那么在home中,如果我 调用/重定向到组件(例如-abc),URL应附加:

如何调用/重定向到ember中的组件?。如果你有一些老套的方法,那么我鼓励你不要这样做。 在Ember中,路由器将当前URL与您定义的路由相匹配

如果您获得了
/home/abc
URL路径,则表示您拥有嵌套在
home
路由中的
abc
路由

Router.map(function() {
  this.route('home', function() {
    this.route('abc');
  });
});

如果您知道所有路线都属于主路线,则可以手动定义它。假设你不知道或者不知道会发生什么,那么就进入URL。

我最近开始学习和使用ember js。看起来,如果我们重定向到它们,作为路由创建的页面将显示在URL上。示例:如果有登录路径、主页、忘记密码。home包含web应用程序的所有组件。然后url可以有/login、/home或/忘记密码。home中的任何组件(比如abc)都不能显示在url上,比如/abc或/home/abc请让我知道,如果我的理解正确,您已经说过您是Ember的新手,所以我打赌这不是一个特殊的edge案例。我相信答案是改变你思考这个问题的方式。不要试图使组件像路由一样工作,只需使用路由,并将组件放入该路由的模板中。