vue-cli项目简单实现国际化i18n

本文详细介绍了如何在Vue CLI项目中使用vue-i18n实现多语言支持,包括安装步骤、文件结构、配置详解和组件中使用示例。通过示例展示了如何在中英文间切换并展示相应的翻译内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vue-cli项目简单实现国际化

1.npm下载vue-i18n

vue-cli项目根路径下:

npm i vue-i18n

我下载的版本是:

"vue-i18n": "^7.6.0"

2.文件目录

在这里插入图片描述

3.文件内容

en.js
export const m = { 
  name: 'name',
  age: 'age'
}
zh.js
export const m = {
  name:'姓名',
  age:'年龄'
}
index.js
import Vue from 'vue'
import VueI18n from 'vue-i18n';

Vue.use(VueI18n);

const i18n = new VueI18n({
    locale: 'zh',    // 语言标识
    messages: {
      'zh': require('./config/zh'),   // 中文
      'en': require('./config/en')    // 英文
    }
})
export default i18n;
main.js
import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
// 引入国际化文件
import i18n from './lang/index'

Vue.config.productionTip = false

new Vue({
  router,
  store,
  i18n, //国际化
  render: h => h(App)
}).$mount('#app')

4.组件内容

<template>
  <div class="home">
    <h1>国际化</h1>
    <p>{{$t('m.name')}}</p>
    <p>{{$t('m.age')}}</p>
    <button @click="changeLang('en')">英文</button>
    <button @click="changeLang('zh')">中文</button>
  </div>
</template>

<script>

export default {
  name: 'Home',
  methods:{
      /**
       * 语言切换
       * @param {string} lang 语言类型
       * @return {void}
       */
      changeLang(lang){
          // 通过this.$i18n.locale来切换语言类型
          this.$i18n.locale=lang;
      }
  }
}
</script>

5.页面效果

英文:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nzARQhpi-1646191151148)(image-20220302111124497.png)]

中文:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AniVqj6h-1646191151149)(image-20220302111142168.png)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值