Передать однопроцессорную поддержку для создания экземпляра i18n

#vue.js #vue-i18n #vue-props #single-spa

#vue.js #vue-i18n #vue-props #single-spa

Вопрос:

есть ли способ передать одностраничный реквизит экземпляру vue i18n, присвоив его сообщению i18n prop.

Конструктор I18n:

 const i18n = new VueI18n({
  locale: process.env.VUE_APP_I18N_LOCALE,
  messages: {},
});
 

Vue однопроцессорный экземпляр:

 const vueLifecycles = singleSpaVue({
  Vue,
  appOptions: {
    el: '#account',
    render() {
      return (
        <App
          eventBus={this.$data.eventBus}
          lang={this.$data.lang}
        ></App>
      );
    },
    i18n,
  },
});
 

Информация: у меня нет доступа к lang внешней функции рендеринга.

В принципе, мне нужна поддержка lang внутри моего объекта i18n messages. Я уже пытался вернуть lang и, но он в конструкторе, не работает. Я также пытался переустановить i18n / messages после lang получения, тоже не работает. Есть еще идеи?

Ответ №1:

Итак, я понял это. Изменить сообщения в смонтированном экземпляре vue можно только с помощью:

 this.$i18n.setLocaleMessage = newLangObj