Maison  >  Article  >  interface Web  >  Compétences en développement Vue3+TS+Vite : comment soutenir l'internationalisation

Compétences en développement Vue3+TS+Vite : comment soutenir l'internationalisation

WBOY
WBOYoriginal
2023-09-08 13:45:401635parcourir

Compétences en développement Vue3+TS+Vite : comment soutenir linternationalisation

Compétences de développement Vue3+TS+Vite : Comment soutenir l'internationalisation

Introduction
Avec le développement de l'ère de l'information, de plus en plus d'applications doivent prendre en charge plusieurs langues pour répondre aux besoins des utilisateurs de différentes régions. Dans les technologies de développement front-end modernes telles que Vue3+TS+Vite, comment soutenir efficacement l'internationalisation ? Cet article présentera une solution d'internationalisation courante et donnera des exemples de code spécifiques auxquels les développeurs pourront se référer et dont ils pourront tirer des leçons.

Texte

  1. Sélection de solutions d'internationalisation
    Dans l'environnement de développement Vue3+TS+Vite, vous avez le choix entre une variété de solutions d'internationalisation. Parmi elles, vue-i18n est une bibliothèque internationale très populaire, qui offre des fonctionnalités riches et une API facile à utiliser. Dans cet article, nous choisissons d'utiliser vue-i18n pour la prise en charge de l'internationalisation. vue-i18n是一款非常流行的国际化库,它提供了丰富的特性和简单易用的API。在本文中,我们选择使用vue-i18n进行国际化支持。
  2. 安装和配置vue-i18n
    首先,我们需要通过npm或yarn来安装vue-i18n库:
npm install vue-i18n

然后,在main.ts中导入并使用vue-i18n

import { createApp } from 'vue'
import { createI18n } from 'vue-i18n'
import App from './App.vue'
import messages from './locales'

const i18n = createI18n({
  locale: 'zh-CN', // 默认语言
  messages,
})

createApp(App).use(i18n).mount('#app')

在上述代码中,我们创建了一个i18n实例,并将其作为选项传递给createApp函数。

  1. 配置语言文件
    接下来,我们需要在locales文件夹中创建语言文件。每个语言文件都是一个JavaScript对象,其中包含了键值对,用于存储对应语言的翻译文本。
├── locales
│   ├── en-US.js
│   └── zh-CN.js
├── App.vue
└── main.ts

以中文(简体)为例,我们创建一个zh-CN.js文件,并在其中定义翻译文本:

export default {
  welcome: '欢迎使用Vue国际化示例',
  greeting: '你好,{name}',
}
  1. 使用国际化文本
    在Vue组件中,我们可以通过$t函数来引用翻译文本。在模板中,可以使用{{ $t('翻译文本') }}的方式显示翻译结果。在代码中,可以通过this.$t('翻译文本')的方式获取翻译文本。
<template>
  <div>
    <h1>{{ $t('welcome') }}</h1>
    <p>{{ $t('greeting', { name: '张三' }) }}</p>
  </div>
</template>

<script>
export default {
  mounted() {
    console.log(this.$t('welcome'))
    console.log(this.$t('greeting', { name: '李四' }))
  },
}
</script>
  1. 切换语言
    我们可以使用i18n实例提供的locale属性来实现语言切换。通过修改i18n.locale的值,可以切换不同的语言。
<template>
  <div>
    <div>
      <button @click="changeLang('zh-CN')">中文</button>
      <button @click="changeLang('en-US')">English</button>
    </div>
    <h1>{{ $t('welcome') }}</h1>
    <p>{{ $t('greeting', { name: '张三' }) }}</p>
  </div>
</template>

<script>
export default {
  methods: {
    changeLang(lang) {
      this.$i18n.locale = lang
    },
  },
}
</script>

通过点击按钮,我们可以切换语言,从而动态改变页面上显示的翻译文本。

总结
通过使用vue-i18n库,我们可以在Vue3+TS+Vite开发环境中实现简单易用的国际化功能。本文通过示例代码介绍了vue-i18n

Installez et configurez vue-i18n

Tout d'abord, nous devons installer la bibliothèque vue-i18n via npm ou Yarn :

rrreee

Ensuite, dans Importez et utilisez vue-i18n dans >main.ts :

rrreee
    Dans le code ci-dessus, nous créons une instance de i18n et l'utilisons comme une option Passée à la fonction createApp.
    1. Configurer les fichiers de langue
    2. Ensuite, nous devons créer des fichiers de langue dans le dossier locales. Chaque fichier de langue est un objet JavaScript contenant des paires clé-valeur utilisées pour stocker le texte traduit dans la langue correspondante.
    3. rrreee
    4. En prenant le chinois (simplifié) comme exemple, nous créons un fichier zh-CN.js et y définissons le texte de traduction :
    5. rrreee
      Utilisation de texte internationalisé🎜Dans le composant Vue, nous pouvons référencer le texte traduit via la fonction $t. Dans le modèle, vous pouvez utiliser {{ $t('translated text') }} pour afficher les résultats de la traduction. Dans le code, vous pouvez obtenir le texte traduit via this.$t('translated text'). 🎜
    rrreee
      🎜Changer de langue🎜Nous pouvons utiliser l'attribut locale fourni par l'instance i18n pour implémenter le changement de langue. En modifiant la valeur de i18n.locale, vous pouvez basculer entre différentes langues. 🎜
    rrreee🎜En cliquant sur un bouton, nous pouvons changer de langue, modifiant ainsi dynamiquement le texte traduit affiché sur la page. 🎜🎜Résumé🎜En utilisant la bibliothèque vue-i18n, nous pouvons implémenter des fonctions d'internationalisation simples et faciles à utiliser dans l'environnement de développement Vue3+TS+Vite. Cet article présente l'installation et la configuration de vue-i18n à travers un exemple de code, ainsi que comment utiliser et changer de texte internationalisé. J'espère que cet article sera utile à tout le monde en termes de soutien international et pourra être appliqué et développé dans des projets spécifiques. 🎜🎜Exemple de code : [https://github.com/example/vue-i18n-demo](https://github.com/example/vue-i18n-demo)🎜🎜Documentation de référence : 🎜🎜🎜[vue- Documentation officielle i18n](https://vue-i18n.intlify.dev/)🎜🎜[Documentation officielle de Vue 3](https://v3.vuejs.org/)🎜🎜[Vite documentation officielle](https:// vitejs.dev/)🎜🎜

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn