テンプレートのパラメーターでng2-translateを使用しようとしました。
{{ test | translation:{value:param} }}
そしてそれは完璧に機能します。 TypeScriptで翻訳を作成したいのですが、次の関数が表示されました。
get(key: string|Array<string>, interpolateParams?: Object): Observable<string|Object>
でも使い方がわかりません。
例はありますか?
私の場合は:
en.json:
{ "test":"the level of {value1} and {value2} is low."}
TypeScript:
let message:string = "";
let parametres = ["1", "2"];
this._translateService.get("test", parametres).subscribe((res:string) => {
message += res;
});
欲しいのですが、1と2のレベルが低いです。
どうもありがとう。
配列ではなくパラメータとしてキー/値を指定すると機能します。
TypeScript:
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>