Андреас, ты прав. Добавление атрибута перевода достаточно. Однако вам все равно придется вручную добавить строку в файл ресурсов и поддерживать ее.

отаю над большим проектом, использующим Angular 6. Этот проект нуждается в значительной интеграции i18n. Я пытаюсь принять правильное решение относительно того, как поступить.

Я вижу, что могу выбирать между:

ngx-translate (https://github.com/ngx-translate/core)Угловой и18н (https://angular.io/guide/i18n)

Я склоняюсь к выбору варианта 2; Angular's i18n. Это потому, что это собственный встроенный пакет Angular, который лучше подходит мне. По-видимому, это также лучше для SEO и немного лучше для производительности без каких-либо обходных путей. Кроме того, теперь он выпущен, я думаю, что ngx-translate может быть устаревшим. Много информации здесь:Angular 5 интернационализация.

Однако вот мои оговорки:

Видимо, версия Angular довольно новая / все еще догоняет (https://github.com/ngx-translate/core/issues/495). Это слишком новое, чтобы взять на себя?Видимо у меня должна быть отдельная сборка сайта для каждого языка (https://angular.io/guide/i18n#template-translations) ??? Я действительно не думаю, что это было бы хорошо. Это правильно? или это тот случай, когда файлы шаблона вставляются динамически каждый раз? Я знаю, что с помощью ngx-translate переведенные слова просто сохраняются в файлах .json - мне нравится эта аккуратность. Я не думаю, что мы хотим кучу разных сборок сайтов.

Есть ли способ сделать живое переключение языков с помощью angular i18n? т.е. переключение языка на странице без перезагрузки / повторной загрузки данных с сервера? Это то, что они называют JIT?

Кто-нибудь пробовалhttps://github.com/robisim74/angular-l10n? выглядит очень хорошо также.

Большое спасибо. С уважением.

Ответы на вопрос(4)

Ваш ответ на вопрос