Как локализовать поля объекта?

У меня есть массив объектов из которого я распечатываю v-for имена полей:
info: [
          {
              name: 'Name',
              value: '',
              pattern: /^[a-zA-Z ]{2,30}$/
           },
         ]


Как я могу локализовать полe name с помощью библиотеки i18n? $.t в объекте не прокатывает(оно и понятно).
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
a) Локализовать в самом шаблоне, в name хранить i18n метку.
б) Отдавать массив из computed свойства.
в) Генерировать массив в функции data() перед тем как положить его в объект data.(при смене локали - не обновится)
...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Tim308 Автор вопроса
В общем добавил к каждому объекту ключ, по которому ищу нужный текст в словаре
{
   name: '',
   value: '',
   pattern: /^[a-zA-Z ]{2,30}$/,
   key: 'nameTxt'
},

ru: {
     nameTxt: 'Имя',
     phoneTxt: 'Телефон',
     emailTxt: 'Электронный адрес',
     someField1Txt: 'Дополнительное поле 1',
     someField2Txt: 'Дополнительное поле 2',
   }


Все работает. Если кто знает более "правильный" способ, буду рад увидеть.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы