使用带有参数的 ng2-translate

Using ng2-translate with parameters

我尝试在模板中使用带参数的 ng2-translate:

{{ test | translation:{value:param} }}

而且效果很好。我想在我的打字稿中构建我的翻译,我看到了这个功能:

get(key: string|Array<string>, interpolateParams?: Object): Observable<string|Object>

但是我不知道怎么用

你们有什么例子吗?

我的情况是:

en.json:

{ "test":"the level of {value1} and {value2} is low."}

打字稿:

let message:string = "";
let parametres = ["1", "2"];
this._translateService.get("test", parametres).subscribe((res:string) => {
    message += res;
});

我想有:1和2的水平低

非常感谢。

当您提供 key/values 作为参数而不是数组时,它会起作用。

打字稿:

let message:string = "";
let parametres = {value1: "1", value2: "2"};
this._translateService.get("test", parametres).subscribe((res:string) => {
    message += res;
});

此外,根据文档,您应该使用双花括号声明占位符。

en.json:

{ "test": "the level of {{value1}} and {{value2}} is low." }

在 en_US.json 文件中,按照以下格式包含 x 和 y(这将是我们要用数字替换的参数。

{"Showing": "Showing {{x}} of {{y}}"}

在component.ts中,min,max将是我们填充的变量。

  min: number;
  max: number;

以下将是 component.html

的一部分
<span> {{ 'Showing' | translate:{x: min, y: max} }} </span>