Element Plus SCSS 变量覆盖用法

安装依赖

powershell 复制代码
pnpm i sass -D

样式文件

element-plus-vars.scss

css 复制代码
// 覆盖变量
@forward "element-plus/theme-chalk/src/common/var.scss" with (
  $colors: (
    "primary": (
      "base": #4080ff,
    ),
    "success": (
      "base": #23c343,
    ),
    "warning": (
      "base": #ff9a2e,
    ),
    "danger": (
      "base": #f76560,
    ),
    "info": (
      "base": #a9aeb8,
    ),
  ),

  $bg-color: (
    "page": #f5f8fd,
  )
);
// 引入 Element Plus 样式(必须在覆盖变量后)
@use "element-plus/theme-chalk/src/index.scss";

element-plus.scss

css 复制代码
/**
 * element-plus 组件样式覆盖
 */
// 变量覆盖(必须在最前面)
@use "./element-plus-vars";
// 引入 Element Plus 样式(必须在覆盖变量后)
@use "element-plus/theme-chalk/src/index.scss";
...

导入样式

index.scss

css 复制代码
// 重置样式
@use "./reset";

// element-plus
@use "./element-plus";
...

main.js

javascript 复制代码
...
// ===== 样式导入 =====
import "@/assets/styles/index.scss";
...

vite.config.js

javascript 复制代码
...
// 自动导入
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
...
plugins: [
    vue(),
    // 自动导入 Element Plus 组件和函数,无需手动 import
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    // 自动注册 Element Plus 组件,可在模板中直接使用,采用sass样式配色
    Components({
      resolvers: [ElementPlusResolver({ importStyle: "sass" })],
    }),
  ],  
...
相关推荐
@yanyu6662 小时前
登录注册功能-明文
vue.js·springboot
滕青山6 小时前
在线PDF拆分工具核心JS实现
前端·javascript·vue.js
We་ct8 小时前
React 性能优化精讲
前端·javascript·react.js·性能优化·前端框架·html·浏览器
光影少年12 小时前
前端在页面渲染优化和组件优化经验?
前端·vue.js·react.js·前端框架
李白的天不白14 小时前
VUE依赖配置问题
前端·javascript·vue.js
小智社群15 小时前
获取贝壳新房列表
前端·javascript·vue.js
一 乐16 小时前
茶叶商城|基于springboot + vue茶叶商城系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·茶叶商城系统
吴声子夜歌17 小时前
Vue3——Pinia状态管理
javascript·vue.js·pinia
追风筝的人er1 天前
SpringBoot+Vue3 企业考勤如何处理法定假期?节假日方案、调休补班与工作日判断链路拆解
前端·vue.js·后端
编程老船长1 天前
解决不同项目需要不同 Node.js 版本的问题
前端·vue.js