В настоящее время Angular не поддерживает динамическую систему перевода.Вам нужно сгенерировать одну статическую сборку для каждой локали, которую вы хотите в своем приложении, как указано в документах :
. Вам необходимо создать и развернуть отдельную версию приложения длякаждый поддерживаемый язык.
Одно из решений (для меня, лучше, чем подход Angular), это использование библиотеки ngx-translate
( GitHub repo ).Стоит отметить, что создатель библиотеки (ocombe) сейчас работает с командой Angular, которая создает новую систему i18n на основе Ivy Renderer.
Там, где я работаю, мы запустили очень большой проект с использованием системы Angular i18n.из-за стандартного формата xliff
для переводчиков, но через 6 месяцев мы решили оставить его из-за времени сборки (представьте, что в большом проекте 10 сборок в режиме prod в большом проекте ... Сборка может занять около 30 минут).Другая проблема, с которой мы столкнулись, заключается в том, что система угловых переводов не поддерживает переводы в строках с параметрами, что очень часто встречается ...