Каков рекомендуемый рабочий процесс для vue.js + i18n?

Недавно я перешел от разработки с использованием фреймворка Django к vue.js. Одна вещь, над которой мне трудно осознать, - это рабочий процесс добавления переводов.

В Django мой рабочий процесс был очень интуитивным:

  1. Аннотируйте мой код с помощью ловушек для перевода.
  2. Вытяните перехватчики перевода в файл .po (gettext)
  3. Переведите сообщения на желаемый язык, т.е. работайте в файле .po
  4. Скомпилируйте файл .po

В условиях, когда все мои работы нужно переводить, этот рабочий процесс был очень удобным и надежным.

Я очень рад переходу на vue.js, но боюсь, что разница в рабочем процессе перевода может помешать сделке. Или, может быть, что-то мне не хватает? Вот мое понимание рабочего процесса vue.js / i18n

  1. Аннотируйте мой код с помощью ловушек для перевода. В отличие от процесса Django, я использую идентификатор перевода для связывания сообщений и переводов.
  2. Вручную добавьте эти идентификаторы перевода в файл JSON, например en.json
  3. Зеркальное отражение этого json-файла в другом языковом стандарте, например fr.json

Я понимаю, что могу использовать такой инструмент, как BabelEdit для управления последним шагом. Хотя это кажется отличным инструментом, это второй шаг, который мне действительно трудно осмыслить. Без такой функции, как django-admin / gettext makemessages, это было бы утомительной и неэффективной задачей.

Что я здесь не так? Я полагаю, что я не единственный, у кого есть эти потребности, поэтому какие рабочие процессы перевода работают для других, разрабатывающих с помощью vue.js?

Заранее спасибо.


person davjfish    schedule 02.02.2021    source источник


Ответы (1)


Я считаю, что вы можете использовать https://github.com/pixari/vue-i18n-extract на шаге 2. Я думаю, что BabelEdit может помочь только в том случае, если вы сохраните свои переводы в виде раздела <i18n> в своих компонентах Vue (в этом случае вам понадобится https://github.com/intlify/vue-i18n-loader)

person IVO GELOV    schedule 02.02.2021