Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

112
Visualizações
Problema de carga de mensajes de configuración regional de VueI18n

Tengo el paquete vueI18n instalado para la localización de idiomas en la aplicación y el objeto de mensajes locales se obtiene a través de una llamada API. Tengo un archivo de configuración donde se especifica el idioma predeterminado y en función del cual se cargará la configuración regional antes de crear app.vue. es decir; Estoy cargando la configuración regional en el método beforeCreate lifecycle. Pero aún así el texto no se carga correctamente.

Inicialmente, el objeto del mensaje es nulo porque, según la configuración del usuario, buscamos el idioma y cargamos los mensajes. Supongo que el objeto vacío inicial está causando el problema.

¿Alguien podría sugerir una forma en que podamos retrasar la carga de la página hasta que confirmemos que el objeto del mensaje se cargue correctamente?

archivo de configuración vueI18

 import Vue from 'vue' import VueI18n from 'vue-i18n' import userConfig from './userConfig' import apiService from '@/service/apiService.js' let selectedLanguage = '' Vue.use(VueI18n) const loadLocaleMessages = async (lang) => { const messages = await apiService.getLocale(lang) return messages } export const i18n = new VueI18n({ locale: selectedLanguage, fallbackLocale: userConfig.defaultLocalizationKey, formatFallbackMessages: true, messages: {} }) export const loadLanguage = async lang => { const messages = await loadLocaleMessages(lang) selectedLanguage = lang return i18n.setLocaleMessage(selectedLanguage, messages[lang]) }

aplicación.vue

 async beforeCreate () { await loadLanguage(this.$userConfig.defaultLocalizationKey) this.$i18n.locale = this.$userConfig.defaultLocalizationKey }
about 4 years ago · Santiago Gelvez
1 Respostas
Responde à pergunta

0

La buena práctica es tener siempre un idioma predeterminado/alternativo dentro de vue-i18n , por ejemplo, inglés. Si no puede hacer esto por cualquier motivo, simplemente puede poner un v-if en la plantilla de la aplicación para que no se represente nada hasta que obtenga al menos 1 idioma en vue-i18n .

about 4 years ago · Santiago Gelvez Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda