vue elementUI组件国际化

App.vue:

html 复制代码
<template>
  <el-config-provider :locale="appStore.locale" :size="size">
    <router-view />
  </el-config-provider>
</template>
<script setup lang="ts">

import useAppStore from '@/store/modules/app';
const appStore = useAppStore();
</script>

appStore.locale的定义如下:

javascript 复制代码
import zhCn from 'element-plus/es/locale/lang/zh-cn';
import en from 'element-plus/es/locale/lang/en';
import enLocale from '../../lang/en';
import zhCnLocale from '../../lang/zh-cn';
import jaLocale from '../../lang/ja';
import arLocale from '../../lang/ar';
import thLocale from '../../lang/th';
import frLocale from '../../lang/fr';
import idLocale from '../../lang/id';
import plLocale from '../../lang/pl';
import ruLocale from '../../lang/ru';
export const useAppStore = defineStore('app', () => {
  const language = ref(Cookies.get('language'));
  const locale = computed(() => {
    if (language?.value == 'en') {
      return Object.assign({},en,enLocale);
    }else if (language?.value == 'zh-cn') {
      return zhCn;
    }else if (language?.value == 'ja') {
      return Object.assign({},en,jaLocale);
    }else if (language?.value == 'ar') {
      return Object.assign({},en,arLocale);
    }else if (language?.value == 'th') {
      return Object.assign({},en,thLocale);
    }else if (language?.value == 'fr') {
      return Object.assign({},en,frLocale);
    }else if (language?.value == 'id') {
      return Object.assign({},en,idLocale);
    }else if (language?.value == 'pl') {
      return Object.assign({},en,plLocale);
    }else if (language?.value == 'ru') {
      return Object.assign({},en,ruLocale);
    } else {
      return zhCn;
    }
  });
  return {
    language,
    locale,
  };
});
export default useAppStore;
相关推荐
踩着两条虫7 分钟前
VTJ.PRO AI + 低代码实战:接入高德地图
前端·vue.js·ai编程
绝世唐门三哥7 分钟前
React性能优化:memo、useMemo和useCallback全解析
前端·react.js·memo
兔子零102410 分钟前
Claude Code 都把宠物养进终端了,我做了一个真正能长期玩的中文宠物游戏
前端·游戏·游戏开发
xiaotao13110 分钟前
Vite 与 Webpack 开发/打包时环境变量对比
前端·vue.js·webpack
摆烂工程师15 分钟前
教你如何查询 Codex 最新额度是多少,以及 ChatGPT Pro、Plus、Business 最新额度变化
前端·后端·ai编程
捧月华如18 分钟前
响应式设计原理与实践:适配多端设备的前端秘籍
前端·前端框架·json
笨笨狗吞噬者20 分钟前
VSCode 插件推荐 Copy Filename Pro,快速复制文件、目录和路径的首选
前端·visual studio code
Armouy23 分钟前
Electron:核心概念、性能优化与兼容问题
前端·javascript·electron
淡笑沐白33 分钟前
ECharts入门指南:数据可视化实战
前端·javascript·echarts
魔卡少女134 分钟前
Nginx配置代码化自动部署詹金斯/Github方案
前端·nginx·github