У меня есть файл перевода json на английский и один на немецкий.
Они выглядят так
en.json
"COLORS": {
"BLUE": "Blue",
"RED": "Red",
"GREEN": "Green"
}
то же самое и с немецким.
У меня есть объект человека, и у него есть массив цветов []. У человека могли быть синие и красные цвета. Тогда это выглядело бы так:
person.colors[0] = "BLUE";
person.colors[1] = "RED";
Как видите, я сохранил в массиве ключи переводов, а не значения.
Теперь я перебираю цвета человека, например:
<div *ngFor = "let color of person.colors">
<p>{{'COLORS.color' | translate}}</p>
</div>
Но я ничего не получаю. В чем может быть проблема?
Я уже смотрел этот пост angular-translate: преобразовать динамическое значение, но мне это не помогло.



Попробуйте так
<div *ngFor = "let color of person.colors">
<p>{{'COLORS.'+color | translate}}</p>
</div>
Да, я знаю. Он будет работать, если вы правильно настроили перевод, потому что я уже пробовал синтаксис выше
Я тоже использую это, я тестировал его с другими переводами, и он работает. Я думаю, что это тоже должно сработать для этого сценария, но я не знаю как. Я должен перевести ключ, а затем указать его значение в качестве вывода.
В вашем коде TranslateModule.forRoot () в модуле приложения или общем модуле, он должен быть в модуле приложения
TranslateModule.forRoot () в модуле приложения и использовать модуль Translate в общем модуле без forRoot (). Это должно быть сделано таким образом (stackblitz.com/edit/…)
Я посмотрел на него, но мне это ничуть не помогло: /
вы сделаете демо-плункер или stackblitz?
Я получаю ключ на выходе, например СИНИЙ или красный .. но мне нужны значения