Vue项目中英文切换,国际化使用教程(国际化使用详细,i18n国际化)

简述:在工作中,我们难免会遇到把文字切换成外语的需求,这里来记录下如何在项目中点击切换成英语,这里会用到i18n,它是一个支持国际化功能的插件,这里来分享下它的使用过程。


一. 首先,我们需要在项目中执行此命令,下载安装相关依赖

npm install vue-i18n

二. 创建语言包文件,langue 文件夹,在该文件夹下再分别创建与默认语言与翻译语言的文件,例如zh.js和en.js,在文件中写入你需要展示和翻译的文本,然后导出,最后在新建一个i18n.js文件引入zh.js和en.js文件,这样的话总体结构比较清晰明了,像下面这样

zh.js:

export default {
  demo1: {
    welcome: "你好,世界",
  },
  demo2: {
    name1: "托尼",
    name2: "杰克",
  },
}

  en.js:

export default {
  demo1: {
    welcome: "Hello,world!"
  },
  demo2: {
    name1: "toni",
    name2: "jack",
  },
}

 在i18n.js文件中引入需要用到的文件,并处理数据后导出;

import Vue from "vue";
import VueI18n from "vue-i18n";
Vue.use(VueI18n);

import zhLocale from "./zh";
import enLocale from "./en";


const messages = {
  zh: {
    ...zhLocale,
  },
  en: {
    ...enLocale
  }
}

const i18n = new VueI18n({
  locale: "zh",
  messages
})

export default i18n;

三. 在main.js中引入,挂载使用

import i18n from "../src/langue/i18n.js"
console.log(i18n);

new Vue({
  router,
  store,
  i18n,
  render: (h) => h(App),
}).$mount("#app");

控制台输出i18n,VueI18n打印成功:

四. 具体使用

通过  {{$t('')}}  和  v-text="$t('')"  展示文本:

<div>{{$t('demo1.welcome')}}</div>

<div v-text="$t('demo1.welcome')"></div>

                通过  this.$i18n.locale  来修改语言显示状态,当你赋值为‘zh’时,就变成中文,

当赋值为 ‘en’时,就变成英文:

 // 点击事件
choseLanguage() {
      
      const res = this.$i18n.locale;
      this.$i18n.locale = res == 'zh' ? res = 'en' : res = 'zh';

}

          this.$i18n.locale用于获取当前语言环境的值,也可以被用于动态地改变语言环境。你可以将它的值更改为另一个支持的语言代码,从而切换到该语言环境。例如:this.$i18n.locale = 'fr'将把应用程序的语言环境更改为法语。

五. 最终效果 

tips: 当然,如果数据两较少的话,可以直接在main.js中引入后,配置使用,使用方式同样:

import VueI18n from 'vue-i18n'
Vue.use(VueI18n)
const i18n = new VueI18n({
  locale: 'zh',
  messages: {
    en: {
      loginTxt: "login",
      change: 'change'
    },
    zh: {
      loginTxt: '登录',
      change: '切换'
    }
  }
})

new Vue({
  router,
  store,
  i18n,
  render: (h) => h(App),
}).$mount("#app");

六. 更多操作,详见>>

Vue I18n官方网站icon-default.png?t=N7T8https://kazupon.github.io/vue-i18n/zh/installation.html#%E5%85%BC%E5%AE%B9%E6%80%A7%E8%AF%B4%E6%98%8E

感觉有用,就一键三连,感谢(●'◡'●)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
你可以使用vue-i18n来实现Vue 3中的内容中英文切换。首先,你需要安装vue-i18n包。你可以使用以下命令来安装: ``` npm install vue-i18n ``` 然后,在你的Vue 3项目中,创建一个i18n.js文件,用于配置和管理国际化相关的内容。在这个文件中,你可以定义不同语言版本的文本和翻译。 ```javascript // i18n.js import { createI18n } from 'vue-i18n' // 定义语言版本和翻译内容 const messages = { en: { message: { hello: 'Hello, world!' } }, zh: { message: { hello: '你好,世界!' } } } // 创建i18n实例 const i18n = createI18n({ locale: 'en', // 默认语言版本 messages // 语言版本和翻译内容 }) export default i18n ``` 接下来,在你的组件中,你可以使用`useI18n`函数来获取i18n实例,并使用`$t`方法来获取翻译后的文本。 ```javascript // YourComponent.vue <template> <div> {{ $t('message.hello') }} </div> </template> <script> import { useI18n } from 'vue-i18n' export default { setup() { const { t } = useI18n() return { $t: t } } } </script> ``` 最后,你可以通过修改`locale`属性来切换不同的语言版本。 ```javascript // YourComponent.vue <script> import { useI18n } from 'vue-i18n' export default { setup() { const { t, locale } = useI18n() // 切换语言版本 const toggleLanguage = () => { locale.value = locale.value === 'en' ? 'zh' : 'en' } return { $t: t, toggleLanguage } } } </script> ``` 通过调用`toggleLanguage`方法,你可以在运行时切换组件中的内容的语言版本。 希望这可以帮助你实现Vue 3中的内容中英文切换

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北城笑笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值