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;
相关推荐
打小就很皮...38 分钟前
Tesseract.js OCR 中文识别
前端·react.js·ocr
wuhen_n1 小时前
JavaScript内存管理与执行上下文
前端·javascript
Hi_kenyon1 小时前
理解vue中的ref
前端·javascript·vue.js
落霞的思绪3 小时前
配置React和React-dom为CDN引入
前端·react.js·前端框架
Hacker_Z&Q3 小时前
CSS 笔记2 (属性)
前端·css·笔记
Anastasiozzzz3 小时前
LeetCode Hot100 295. 数据流的中位数 MedianFinder
java·服务器·前端
Exquisite.4 小时前
Nginx
服务器·前端·nginx
打小就很皮...4 小时前
dnd-kit 实现表格拖拽排序
前端·react.js·表格拖拽·dnd-kit
Ulyanov4 小时前
从静态到沉浸:打造惊艳的Web技术发展历程3D时间轴
前端·javascript·html5·gui开发
打小就很皮...4 小时前
React 19 + Vite 6 + SWC 构建优化实践
前端·react.js·vite·swc