覆盖ElementPlus样式theme

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path 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/
export default defineConfig({
  plugins: [vue(),
  AutoImport({
    resolvers: [ElementPlusResolver({ importStyle: 'sass' })],
  }),
  Components({
    resolvers: [ElementPlusResolver({ importStyle: 'sass' })],
  })
  ],
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src'),
      'views': path.resolve(__dirname, 'src', 'views'),
      'components': path.resolve(__dirname, 'src', 'components')
    }
  },
  css: {
    preprocessorOptions: {
      scss: {
        additionalData: `@use "@/theme.scss" as *;`,
      },
    },
  },
})

1. 自动导入的时候, 样式要选择sass

2. 使用css预处理器, 编译自定义的主题, 会和 element-plus 的主题合并

@forward "element-plus/theme-chalk/src/common/var.scss" with ($colors: ("primary": ("base": #ff6700,
    ),
    "success": ("base": #3dc54b,
    ),
  ));

 

posted @ 2023-03-31 09:35  深海里的星星i  阅读(601)  评论(0)    收藏  举报