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

392
Visualizações
¿Cómo utilizar la integración de PrimeVue i18n?

Creé una aplicación Vue 3 usando la CLI y agregué PrimeVue a mi proyecto. Según los documentos , quiero configurar los locales.

Dentro del archivo main.ts intenté configurar una muestra con varios idiomas

 .use(PrimeVue, { locale: { en: { message: "Message", }, ja: { message: "メッセージ", }, de: { message: "Nachricht", }, }, })

y este es un componente de muestra que intenta trabajar con message basado en la configuración regional seleccionada

 <template> <div> <p>{{ message }}</p> <button @click="setCurrentLocaleToJapanese">Change to japanese</button> </div> </template> <script lang="ts"> import { defineComponent, ref } from "vue"; import { usePrimeVue } from "primevue/config"; export default defineComponent({ setup() { const primevue = usePrimeVue(); const message = ref(primevue.config.currentLocale.message); // reactive, fallback locale? function setCurrentLocaleToJapanese() { primevue.config.currentLocale = "ja"; } return { message }; }, }); </script>

Todo mi código es pseudocódigo porque aún no conozco la sintaxis correcta. Estoy luchando con varios problemas:

  • ¿Cómo configurar una configuración regional alternativa?
  • ¿Hay algo similar a vue-i18n para acceder a la traducción correcta del message por ejemplo, {{ $t('message') }} ? Este const message = ref(primevue.config.currentLocale.message); Está Mal.
  • ¿Cómo cambiar globalmente la configuración regional actual seleccionada?
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

De acuerdo con la documentación que vinculó, no hay anidamiento por configuración regional en .use(PrimeVue, {}) .

Por lo tanto, debe declarar sus valores predeterminados como:

 .use(PrimeVue, { locale: { emptyFilterMessage: 'There is no records', } }

Ahora, cuando desee cambiar la configuración regional, debe anular todas las configuraciones regionales como se indica en la documentación:

 const primevue = usePrimeVue(); primevue.config.locale.emptyFilterMessage = 'I wish there were some records';

¿Cómo configurar una configuración regional alternativa?

No parece haber ningún mecanismo para tener una configuración regional alternativa. Pero puedes simular esto, de hecho, si usas Object.assign puedes tener algo como:

 primevue.config.locale = Object.assign( {}, en, // fallback, an object like { emptyFilterMessage: 'Empty', emptyMessage: 'empty...' } de, // locale, an object like { emptyFilterMessage: 'Leer' } );

Nota: El en y de podrían resultar de import s.

¿Hay algo similar a vue-i18n para acceder a la traducción correcta?

Puede usar primevue.config.locale.<key> directamente en su plantilla, como:

 <template> <p>{{ primevue.config.locale.emptyFilterMessage }}</p> </template>

¿Cómo cambiar globalmente la configuración regional actual seleccionada?

Le aconsejaría que use una tienda (generalmente Vuex) para lograr esto.

La idea es que cuando cambie a otra configuración regional, la tienda será responsable de actualizar primevue.config.locale , por lo que toda su aplicación actualizará sus mensajes.

over 4 years ago · Santiago Trujillo 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