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" })],
    }),
  ],  
...
相关推荐
英勇无比的消炎药13 小时前
别再盲目混用AI组件库和传统组件库差距原来这么大
前端·vue.js
英勇无比的消炎药15 小时前
前端提效神器全新AI组件库TinyRobot改写日常开发模式
前端·vue.js
英勇无比的消炎药15 小时前
前端提效神器TinyRobot
前端·vue.js
CDwenhuohuo16 小时前
uni 背景色渐变 全屏
前端·javascript·vue.js
爱怪笑的小杰杰16 小时前
Vue 项目交付第三方开发,如何隐藏核心 JS 源码?
前端·javascript·vue.js
小二·16 小时前
Vue 3 组合式 API 进阶实战
前端·javascript·vue.js
AI行业学习17 小时前
CC‑Switch v3.16.1 免费下载(Windows+macOS+Linux)、使用方法【2026.6.11】
linux·开发语言·windows·python·macos·前端框架·html
rising start17 小时前
九、vue3 组件通信:全场景详解
前端·vue.js·typescript
编程技术手记17 小时前
Vue Scoped CSS 与动态创建 DOM 的兼容性问题
前端·css·vue.js