【问题标题】:Angular 4 create different language path route to the same componentAngular 4为同一组件创建不同的语言路径路由
【发布时间】:2018-05-11 17:41:28
【问题描述】:

我想为网站创建多语言支持。我目前正在使用 ngx-translate 翻译所有文本。假设我们有两个 url,mypage/en/home 和 mypage/es/home。如何创建这些语言路径并将它们路由到主组件?

【问题讨论】:

    标签: angular multilingual angular-router


    【解决方案1】:

    根据评论更新:

    在路由器的路由中,您可以执行以下操作:

    export const routes: Routes =[
      {
        path: 'mypage/:language/home', component: HomeComponent
      }
    ]
    

    这样您实际上只需要一条路线,并且可以使用任意多种语言。

    然后在你的组件中你可以这样做:

    public constructor (
      route: ActivatedRoute
    ){
      this.language = this.route.snapshot.params['language'];  
    }
    

    如果你真的想要多条路线,你可以这样做:

    export const routes: Routes =[
      {
        path: 'mypage/en/home', component: HomeComponent
      }
      {
        path: 'mypage/es/home', component: HomeComponent
      }
    ]
    

    【讨论】:

    • 我知道 ngx 会为每种语言翻译我单独的 .json 文件。但是我想创建类似 mypage/en/home 、 mypage/es/home 的语言路径,只是想创建一个额外的语言路径,路由会检测该语言路径进行相应的翻译。
    • 不错...我会试试这个 ml 路由设置
    猜你喜欢
    • 1970-01-01
    • 2019-12-10
    • 2021-09-17
    • 2022-01-01
    • 2018-07-11
    • 1970-01-01
    • 1970-01-01
    • 2018-04-24
    • 2017-01-13
    相关资源
    最近更新 更多