vue3 element plus 更换主题颜色

实测有效

1.src下新建文件styles/element/index.scss

javascript 复制代码
// styles/element/index.scss
/* 只需要重写你需要的即可 */
 
@forward 'element-plus/theme-chalk/src/common/var.scss' with (
  $colors: (
    'primary': (
      'base': #b78e81,
    ),
    'success': (
      'base': #b78e81,
    ),
  ),
);

2.vite.config.ts 里面新增依赖

javascript 复制代码
// 新增 npm i unplugin-vue-components
// 新增  npm i unplugin-auto-import

import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";

3.配置vite.config.ts 重新启动即可

javascript 复制代码
import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import { resolve } from "path";

import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";

// https://vitejs.dev/config/
const pathResolve = (dir: string) => {
  return resolve(__dirname, ".", dir);
};
const alias: Record<string, string> = {
  "/@": pathResolve("./src/"),
};


// vite.config
export default defineConfig({
  plugins: [
    vue(),
    // 1.第一步
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    // 2.第二步
    Components({
      //1.配置elementPlus采用css样式文件
      resolvers: [ElementPlusResolver({ importStyle: "sass" })],
    }),
  ],
  resolve: { alias },
  css: {
    preprocessorOptions: {
    // 3.第三步
      scss: {
        // additionalData: `@import "./src/style/mixin.scss";`, // 此处全局的scss文件
        additionalData: `
          @use "/@/styles/element/index.scss" as *;
        `,
      },
    },
  },
  server: {
    proxy: {
      "/api": {
        target: "http://localhost:3000",
        changeOrigin: true,
      },
    },
  },
});
相关推荐
IT_陈寒6 分钟前
Python项目实战经验分享:为什么你的多进程日志会丢失?
前端·人工智能·后端
柳杉14 分钟前
让 AI 学会审美、建模和剪片:我收藏夹里的 14 个仓库
前端·ai编程·three.js
前端架构师-老李19 分钟前
HTML与CSS基础第七课—HTML 中的a标签(跳转链接)
前端·css·html
陈随易1 小时前
一个网吧网管,做了个网页,卖了 5000 万
前端·后端·程序员
jktantan9 小时前
Vue keep-alive 切标签后滚动位置回顶?因为 onDeactivated 里读到的 scrollTop 是 0
前端·javascript·vue.js
总要学点什么10 小时前
第89篇:三维特效-螺旋圆效果——让螺旋臂卷起一圈圈外扩的涟漪
开发语言·javascript·ecmascript·webgl·cesium·空间分析·1024程序员节
2601_9628857210 小时前
quotes 字段全解:涨跌幅、振幅、换手率的口径与单位
java·前端·spring
excel11 小时前
encodeURI 和 encodeURIComponent 有什么区别?
前端
前端精髓11 小时前
调用openrouter的免费API模型
java·前端·javascript
赛博守夜人11 小时前
AI安全攻防与治理之十四:AI 安全测试不能脱离传统安全,Web、API、移动端与模型攻击面的组合拳
前端·人工智能·安全