Как динамически отслеживать изменение языка в библиотеке Vant?

Рейтинг: 0Ответов: 1Опубликовано: 29.05.2023

Всем здравствуйте! Необходимо настроить язык для библиотеки Vant. В main для Vant усть следующие настройки:

import { Locale } from 'vant';
import enUS from 'vant/lib/locale/lang/en-US';
import esES from 'vant/lib/locale/lang/es-ES';

let locale;
const vLocales = [
    { en: 'en-US', es: 'es-ES' },
    { en: enUS, es: esES },
];
Locale.use(cLocales[0][locale], vLocales[1][locale];

Пробовала через computed отслеживать, но почему-то не получается, все остается как есть, хотя для остальной части приложения, где локализация отслеживается через i18n - работает.

Каким образом мне можно динамически, при изменении в настройках приложения, менять и входные параметры локали для компонентов? Как динамически отслеживать данную locale? Буду рада любой помощи!)

Ответы

▲ 0

Попробовала отследить изменение локали через watch, но, возможно это не слишком красивый метод...

const locale = computed(() => store.state.Auth.locale);
watch(locale, (oldValue, newValue) => {
    Locale.use(vLocales[0][locale.value], vLocales[1][locale.value]);
});

Locale.use(vLocales[0][locale.value], vLocales[1][locale.value]);

Таким образом на данный момент работает изменение языка, но, может, кто-нибудь подскажет более красивое решение)