首页 > 解决方案 > 如何在 Transloco Translate API 中获取范围值

问题描述

我试图找到从作用域对象获取翻译值的语法。

我想获得关键“标题”的翻译文本。

文件:en.json

{
  "foo": "Foo",
  "bar": "Bar",
  "dashboard": {
     "title": "Dashboard Title",
     "desc": "Dashboard Desc"
  }
}

const title = this.translocoService.translate('dashboard.title'); // not working

这是我的组件

import {TRANSLOCO_SCOPE, TranslocoService} from "@ngneat/transloco";

@Component({
  // tslint:disable-next-line:component-selector
  selector: "guest-register",
  templateUrl: "./register.component.html",
  styleUrls: ["./register.component.scss"],
  providers: [
    {
      provide: TRANSLOCO_SCOPE,
      useValue: {scope: 'dashboard', alias: 'dashboard'}
    }
  ],
  animations: [
    trigger("showNameState", [
      transition("void => *", [
        style({transform: "translateY(-100%)"}),
        animate(300)
      ])
    ])
  ]
})

我已经阅读了有关范围的信息,但这是获取嵌套值的唯一方法吗?

在模板中,我可以使用这种语法

<div class="ui-g" *transloco="let t; read: 'guest-register'">

所以翻译api必须有类似的语法。

标签: transloco

解决方案


推荐阅读