vue3 i18n配置详细教学

一. 安装类库

npm install vue-i18n@next

@next 表示安装i18n 最新的 vue3的版本

二. 配置 i18n的 配置文件

// i18n.ts

import { createI18n } from 'vue-i18n'
import zh from './zh'
import en from './en'

const i18n = createI18n({
    legacy: false,  // 没有该参数可能会报错
    locale: 'zh',
    messages: {
        zh,
        en
    }
})

export default i18n

// zh.ts
export default {
    message: {
        homeText: '主页',
        mineText: '个人中心'
    }
}

三. 挂载到实例上

// main.ts
import i18n from './language/i18n'

const app = createApp(App)
...
app.use(i18n)

 四. 使用

// 使用的 xxx.vue
<script setup lang="ts">
    import { useI18n } from "vue-i18n";
    const { t } = useI18n()
</script>

<template>
     <p>{{t('message.homeText') }} </p>
</template>

点击按钮切换语言 

<script setup lang="ts">
import { useI18n } from 'vue-i18n'

// 核心思想就是改变 useI18n 解构出来的locale
// 笔者 这里为了和页面中的其他变量 区别  - 取别名 i18nLanguage。  
const { locale: i18nLanguage } = useI18n()

const toggle = (languageKey) => {
  i18nLanguage.value = languageKey  // zh en
}
</script>
<template>
<el-button @click="toggle('zh')">点击切换中文</el-button>
<el-button @click="toggle('en')">点击切换英文</el-button>
</template>

  • 10
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值