vue3中怎么安装使用vue-i18n实时切换语言且不用刷新

其他教程   发布日期:2025年03月17日   浏览次数:202

本篇内容主要讲解“vue3中怎么安装使用vue-i18n实时切换语言且不用刷新”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue3中怎么安装使用vue-i18n实时切换语言且不用刷新”吧!

我使用的版本

  1. "vue": "^3.2.31",
  2. "vue-i18n": "^9.2.0-beta.34",

安装 npm install vue-i18n@next 这样装的最新版的才能在vue3.0使用

1、main.ts

  1. import { createApp } from 'vue'
  2. import App from './App.vue'
  3. import router from './router'
  4. import { setupI18n } from '@/locales/setupI18n';
  5. const app = createApp(App)
  6. // 使用国际化i18n
  7. app.use(setupI18n)
  8. router.isReady().then(() => app.mount('#app'))

2、locales

  1. import { App } from 'vue';
  2. import { createI18n } from 'vue-i18n' //引入vue-i18n组件
  3. import { messages } from './config';
  4. import globalConfig from '@/config/index'
  5. let {setting:{lang:defaultLang}} = globalConfig
  6. //注册i8n实例并引入语言文件
  7. const localeData = {
  8. legacy: false, // 使用CompotitionAPI必须添加这条.
  9. locale: defaultLang,
  10. messages, // 一个语言包对象,简单
  11. globalInjection: true
  12. }
  13. // setup i18n instance with glob
  14. export const setupI18n = {
  15. install (app: App) {
  16. const i18n = createI18n(localeData)
  17. app.use(i18n);
  18. }
  19. }

config文件

  1. import zh from './language/zh'
  2. import en from './language/en'
  3. // i18n本地语言包
  4. export const messages = {
  5. 'zh-CN': zh,
  6. 'en-US': en
  7. }
  8. -------------------------
  9. // zh文件,en同理
  10. export default {
  11. menu: {
  12. home: '主页'
  13. }
  14. }

3、国际化切换

  1. <template>
  2. // select 国际化的一个下拉框
  3. </template>
  4. <script lang="ts" setup>
  5. import { useI18n } from 'vue-i18n'
  6. const { locale } = useI18n();
  7. const handleChange = (value: Value) => {
  8. // ...
  9. // 这句话就是关键
  10. locale.value = value.value
  11. };
  12. </script>

4、最后使用

  1. <template>
  2. {{t('menu.home')}}
  3. </template>
  4. <script lang ="ts" setup>
  5. import { useI18n } from 'vue-i18n'
  6. const { t } = useI18n();
  7. </script>

以上就是vue3中怎么安装使用vue-i18n实时切换语言且不用刷新的详细内容,更多关于vue3中怎么安装使用vue-i18n实时切换语言且不用刷新的资料请关注九品源码其它相关文章!