如何利用i18n实现国际化

1.首先新建i18.js文件

复制代码
// i18n配置
import { createI18n } from 'vue-i18n'
// import ElementPlus from 'element-plus'
import zhCn from 'element-plus/es/locale/lang/zh-cn'
import zh from './zh-cn'
import en from './en'
import ru from './ru'
const messages = {
  en_US: {
    ...en,
    // ...elementEnLocale
  },
  zh_CN: { 
    ...zh,
    ...zhCn
  },
  ru_RU: {
    ...ru,
    // ...elementZhLocale
  }
}
// 创建i18n
const i18n = createI18n({
  locale: localStorage.getItem('language') || 'zh_CN', // 语言标识
  globalInjection: true, // 全局注入,可以直接使用$t
  // 处理报错: Uncaught (in promise) SyntaxError: Not available in legacy mode (at message-compiler.esm-bundler.js:54:19)
  legacy: false,
  messages
})

export default i18n

注意:en_US、zh_CN、ru_RU必须按照固有格式

2.新建en.js文件

复制代码
export default {
  button: {
    confirm: 'Confirm',
    login: 'Login',
    search: 'Search',
    reset: 'Reset'
  }
}
相关推荐
我命由我123453 小时前
CesiumJS 笔记 - 获取容器中心点、Cartesian3 clone 方法、修改 Cartesian3 对象的高度
前端·javascript·css·前端框架·html·html5·js
Hopebearer_4 小时前
页面突然只剩 DOM?一次静态资源版本错配排查
前端·部署
抱抱宝4 小时前
Agent-study项目教程(03):手写 Mini-ReAct Agent(不依赖框架)
javascript·人工智能·gpt·react.js·prompt·agent
东风破_4 小时前
ESLint 是什么?为什么你的项目需要它?
前端·后端·代码规范
用户938515635075 小时前
Next.js 笔记系统(二):Redis 数据服务与侧边栏组件拆分实战
javascript·全栈
java1234_小锋6 小时前
Vue3专题 - 组件基础
vue.js·vite
圣殿骑士-Khtangc6 小时前
Go字符串高效拼接性能对比与底层原理分析
服务器·前端·golang
BigTopOne7 小时前
【ijkplayer】 硬解码流程
前端
kyriewen7 小时前
DeepSeek Harness开源第一天我就上手了——和Claude Code的差距比想象中大
前端·ai编程·deepseek
捡田螺的小男孩7 小时前
什么是 Skill?手把手带你写一个简单有用的 Skill!
前端·后端·程序员