使用ngx-translate更改Angular 5中语言更改的网页网址

时间:2018-05-23 11:19:47

标签: angular ngx-translate

问题是,如何使用ngx-translate更改路由模块中定义的语言更改中的URL路由?

挑战在于路线是预先设定的,我找到的唯一可能的解决方案是this one,但并不是我想要的。

我需要的是改变所有语言变化的路线home_ [lang](例如):

https://baseurl/home_en

https://baseurl/home_es

每次用户更改语言时。

有可能吗?

我也看到this issue,但仍然不适合我。

1 个答案:

答案 0 :(得分:0)

也许您可以拥有一条接收 home_language 并拥有子路线的父路线。像这样:

const  appRoutes: Routes = [
  { path: ':home_language', component: LanguageComponent, children: [
    //all your toutes here
    { path: 'route1', component: Component1 },
    { path: 'route2', component: Component2 }
  ] }
];

所以你有这样的路线:

/home_es/route1
/home_es/route2
/home_en/route1
/home_en/route2

在LanguageComponent模板中,您应该添加 router-outlet ,以便子路径中的组件将被加载到那里。

<router-outlet></router-outlet>