element-plus国际化和主题色修改方案

644 阅读1分钟
背景:公司业务使用到element-plus,自定义了主题色和国际化处理支持多语言

一、国际化处理

// 方案一
import ElementPlus from 'element-plus' 
import zhCn from 'element-plus/es/locale/lang/zh-cn' 
app.use(ElementPlus, { locale: zhCn, })
// 方案二
<template> 
<el-config-provider :locale="zhCn"> 
    <app /> 
</el-config-provider>
</template> 
<script setup lang="ts"> 
import { ElConfigProvider } from 'element-plus' 
import zhCn from 'element-plus/es/locale/lang/zh-cn' 
</script>

总结:个人推荐方案二,我使用的版本是1.0beta,方案一不生效

二、自定义主题色

Element Plus 默认提供一套主题,CSS 命名采用 BEM 的风格,方便使用者覆盖样式。 但是如果需要大规模替换样式,例如: 将主题颜色从蓝色改为橙色或绿色,也许一个个将其覆盖起来不是一个好主意。

// 方案一
// CSS 变量是一个非常有用的功能,几乎所有浏览器都支持。 (IE:啊这?)
:root { 
    --el-color-primary: green; 
}
出于性能原因,更加推荐你在类名下添加自定义 css 变量,而不是在全局的 `:root` 下。
.self-color {
    --el-color-primary: green;
    }
// 方案二
[主题色网站](https://elementui.github.io/theme-chalk-preview/#/zh-CN)
自己根据需要选择,然后下载主题色

个人使用的是方案一,这两个方案都是比较简单好上手的。还有其他一些方案需要配置以及安装theme-chalk依赖支持

有问题随时沟通,我会及时回复