Terjemahkan nilai dinamis dengan sudut 5

Saya memiliki file terjemahan json untuk bahasa Inggris dan satu untuk bahasa Jerman.

Mereka terlihat seperti ini

en.json

"COLORS": {
        "BLUE": "Blue",
        "RED": "Red",
        "GREEN": "Green"
}

sama untuk yang Jerman.

Saya memiliki objek orang dan ini memiliki array warna []. Seseorang bisa saja memiliki warna biru dan merah. Maka akan terlihat seperti ini:

person.colors[0] = "BLUE";
person.colors[1] = "RED";

Seperti yang Anda lihat, saya menyimpan kunci terjemahan dalam array dan bukan nilainya.

Sekarang saya menelusuri warna orang tersebut seperti:

<div *ngFor="let color of person.colors">
    <p>{{'COLORS.color' | translate}}</p>
</div>

Tapi saya tidak mendapatkan hasil. Apa masalahnya?

Saya sudah melihat postingan ini angular-translate: Terjemahkan nilai dinamis tetapi tidak tolong aku.


person BlueCat    schedule 17.07.2018    source sumber


Jawaban (1)


Coba cara ini

<div *ngFor="let color of person.colors">
    <p>{{'COLORS.'+color | translate}}</p>
</div>
person jack    schedule 17.07.2018
comment
Saya mendapatkan kunci sebagai keluaran seperti BIRU atau merah.. tapi saya membutuhkan nilainya - person BlueCat; 17.07.2018
comment
ya saya tahu. Ini akan berfungsi jika Anda mengonfigurasi terjemahan dengan benar karena saya sudah mencoba sintaks di atas - person jack; 17.07.2018
comment
Saya juga menggunakan ini dan saya mengujinya dengan terjemahan lain dan berhasil. Saya pikir itu juga harus berhasil untuk skenario ini tetapi saya tidak tahu caranya. Saya harus menerjemahkan kuncinya dan kemudian memberikan nilainya sebagai keluaran. - person BlueCat; 17.07.2018
comment
Dalam kode Anda, TranslateModule.forRoot() di modul aplikasi atau modul bersama, seharusnya ada di modul aplikasi - person jack; 17.07.2018
comment
TranslateModule.forRoot() di modul aplikasi dan gunakan modul Translate di modul bersama tanpa forRoot(). Ini harus dilakukan dengan cara ini(stackblitz.com/edit/) - person jack; 17.07.2018
comment
Saya melihatnya tetapi tidak membantu saya sama sekali :/ - person BlueCat; 17.07.2018
comment
maukah kamu membuat demo plunker atau stackblitz? - person jack; 17.07.2018