【问题标题】:Angular 2 Route TranslationAngular 2 路线翻译
【发布时间】:2023-04-04 21:02:02
【问题描述】:
我有一个支持多种语言的网络应用。我正在使用@ngx-translate 成功翻译应用程序的内容。
然而;我还需要翻译路线链接。
我的链接是这样的
www.somewebsite.com/dashboard。
现在,当我将语言更改为土耳其语时;
我需要链接看起来像
www.somewebsite.com/anasayfa.
我怎样才能轻松做到这一点?
任何帮助表示赞赏。
提前致谢。
【问题讨论】:
标签:
angular
angular2-routing
translate
angular-translate
ngx-translate
【解决方案1】:
这是一个坏主意,因为您需要为每种语言构建多个路由。一般来说,我建议您使用语言配置路线。例如,
www.somewebsite.com/en/dashboard
如果它是一种不同的语言,那么它应该是,
www.somewebsite.com/es/dashboard.
但是,如果您真的想使用不同的语言路线进行构建,那么您必须这样做,
create a new path : { path: ':lang/dashboard', component: dashboardComponent }
this.route.params.subscribe(params => {
translate.use(params['lang']);
switch (params['lang']) {
case 'en':
location.replace(<code>index.html#/${params['lang']}/dashboard</code>)
break;
case 'fr':
location.replace(<code>index.html#/${params['lang']}/anasayfa</code>);
break;
}
})
如果你不喜欢上面的实现,你也可以有不同的路线