recherche

Maison  >  Questions et réponses  >  le corps du texte

Vue 3 vue-i18n. Comment utiliser $t(t) en dehors de l'application (fichier .vue) ? API de synthèse

<p>Je souhaite formater ma date/heure en dehors du composant. </p> <pre class="brush:js;toolbar:false;">function transformDatetime(config, value) { si (valeur) { return $d(new Date(value), config); } retourner $t('-'); } ≪/pré> <p>J'essaie d'obtenir $t de l'instance d'application. Mais cela ne fonctionne que dans le contexte d'un composant, tout comme useI18n. </p> <pre class="brush:js;toolbar:false;">importer { getCurrentInstance } depuis 'vue' exporter la fonction par défaut useGlobal() { const instance = getCurrentInstance() si (!instance) retourne renvoyer instance.appContext.config.globalProperties } ≪/pré> <p><br /></p>
P粉032649413P粉032649413462 Il y a quelques jours446

répondre à tous(1)je répondrai

  • P粉143640496

    P粉1436404962023-08-27 00:25:26

    J'ai trouvé la solution. Ajoutez simplement votre i18n 导入到应用程序外部的文件中,然后使用 i18n.global.t

    import { createI18n } from "vue-i18n"
    
    export const i18n = createI18n({
        legacy: false,
        locale: 'ja',
        fallbackLocale: 'en',
        messages,
    })
    
    import { i18n } from '@/i18n'
    
    const { t: $t, d: $d, n: $n } = i18n.global
    
    const expample = $t('some-text')
    

    répondre
    0
  • Annulerrépondre