vue3+ts+vite全局配置Element-Plus主题色

概述

我找了很多博客,想全局配置Elmenet-Plus组件主题色,但都没有效果。所以有了这篇博客,希望能对你有所帮助!!!

文章目录

  • 概述
  • 一、先看效果
  • 二、创建全局颜色文件
      • 2.1 /src/styles 下新建 element-plus.scss 文件
      • 2.2 引入颜色配置文件
      • 2.3 我的目录结构
  • 三、vite.config.ts 中配置
  • 四、总结
  • 五、系列专栏文章链接
      • 第一篇:[配置husky、stylelint、commitlint,实现git提交前代码校验](http://t.csdn.cn/226Xn)
      • 第二篇:[配置@路径别名,实现@代替/src](http://t.csdn.cn/mMEwO)
      • 第三篇:[配置 vue-router路由跳转,并完成路由模块化](http://t.csdn.cn/4r1ht)
      • 第四篇:[配置vue-i18n中英文切换,完成国际化](http://t.csdn.cn/xyOaV)
      • 第五篇:[配置滚动条样式](http://t.csdn.cn/cUkdA)
      • 第六篇:[项目引入Element-plus,并配置按需自动导入](http://t.csdn.cn/mxdsS)
      • 第七篇:[配置页面切换,路由跳转过渡动画](http://t.csdn.cn/LEKk6)
      • 第八篇:[配置nprogress,实现路由加载进度条](http://t.csdn.cn/inFOa)
      • 第九篇:[基于el-menu封装左侧菜单栏组件](http://t.csdn.cn/wyGAS)

一、先看效果

实现对 Elmenet-plus 组件库中组件主题色的全局修改

在这里插入图片描述

二、创建全局颜色文件

2.1 /src/styles 下新建 element-plus.scss 文件

// 此文件路径:/src/styles/element-plus.scss
// 配置element-plus主题色
@forward "element-plus/theme-chalk/src/common/var.scss" with ($colors: ("primary": ("base": #21cee9),"success": ("base": #71d46f),"warning": ("base": #e6a23c),"danger": ("base": #E34D59),"error": ("base": #E34D59),"info": ("base": #E7E7E7),)
);

2.2 引入颜色配置文件

在 /src/styles/index.scss 中引入我们书写的颜色配置文件

// Element-plus全局配置(本文相关核心代码)
@import './element-plus.scss';

2.3 我的目录结构

在这里插入图片描述

三、vite.config.ts 中配置

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
// 实现 @等于./ src--绝对路径
import path, { resolve } from 'path';
// 以下三项为配置Element-plus按需自动引入
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
// svg plugin
import { createSvgIconsPlugin } from 'vite-plugin-svg-icons';/** 路径查找 */
const pathResolve = (dir: string): string => {return resolve(__dirname, '.', dir);
};/** 设置别名 */
const alias: Record<string, string> = {'@': pathResolve('src'),'@build': pathResolve('build')
};
export default defineConfig({plugins: [vue(),// 以下两项为配置Element-plus按需自动引入AutoImport({resolvers: [// element-plus主题色配置相关--下面这句importStyle一定要写,不要写个空对象在这儿,否则就会不生效ElementPlusResolver({// 自动引入修改主题色添加这一行,使用预处理样式,不添加将会导致使用ElMessage,ElNotification等组件时默认的主题色会覆盖自定义的主题色importStyle: 'sass'})]}),Components({resolvers: [// element-plus主题色配置相关--下面这句importStyle一定要写,不要写个空对象在这儿,否则就会不生效ElementPlusResolver({// 自动引入修改主题色添加这一行,使用预处理样式importStyle: 'sass'})]}),// 修改 svg 相关配置createSvgIconsPlugin({// 指定需要缓存的图标文件夹iconDirs: [path.resolve(__dirname, './src/icon')]})],define: {__VUE_I18N_FULL_INSTALL__: true,__VUE_I18N_LEGACY_API__: false,__INTLIFY_PROD_DEVTOOLS__: false},resolve: {alias},css: {preprocessorOptions: {scss: {// element-plus主题色配置相关--引入index.scss文件additionalData: `@use "@/styles/index.scss" as *;`}}},// 服务端渲染server: {// 是否开启 httpshttps: false,// 端口号port: 8848,host: '0.0.0.0',// 本地跨域代理 https://cn.vitejs.dev/config/server-options.html#server-proxyproxy: {}}
});

四、总结

跟着很多博客配置后都没有生效,终于配置生效后我再回头看,发现了几个需要主要的地方,以下是我认为的核心代码,希望各位注意

// 以下两项为配置Element-plus按需自动引入
AutoImport({resolvers: [ElementPlusResolver({// 自动引入修改主题色添加这一行,使用预处理样式,不添加将会导致使用ElMessage,ElNotification等组件时默认的主题色会覆盖自定义的主题色importStyle: 'sass'})]
}),
Components({resolvers: [ElementPlusResolver({// 自动引入修改主题色添加这一行,使用预处理样式importStyle: 'sass'})]
}),
css: {preprocessorOptions: {scss: {additionalData: `@use "@/styles/index.scss" as *;`}}
},

五、系列专栏文章链接

专栏简介:系列文章记录了从零到一 🚀 搭建 Vue3+Ts+Vite 项目的全过程,包括项目配置、组件封装、常见问题及处理方法等 🚚
初心:若本文都能对你有一点🤏🏽帮助,也是极好的
最后:点赞收藏不迷路🍺,系列文章持续更新中~~👨🏻‍💻,有任何问题欢迎👏评论区留言

第一篇:配置husky、stylelint、commitlint,实现git提交前代码校验

第二篇:配置@路径别名,实现@代替/src

第三篇:配置 vue-router路由跳转,并完成路由模块化

第四篇:配置vue-i18n中英文切换,完成国际化

第五篇:配置滚动条样式

第六篇:项目引入Element-plus,并配置按需自动导入

第七篇:配置页面切换,路由跳转过渡动画

第八篇:配置nprogress,实现路由加载进度条

第九篇:基于el-menu封装左侧菜单栏组件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/33613.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

“探索计算机世界:进程的基本概念与功能“

文章目录 前言什么是进程如何描述进程进程的属性1. 进程标识符2. 内存指针3. 文件描述符表4. 进程的状态5. 优先级6. 上下文7. 记账信息 内存分配并行和并发 前言 作为程序员&#xff0c;理解计算机的组成以及计算机是怎样运行的是很重要的&#xff0c;因为只有了解计算机我们…

k8s、docker添加daemon.json添加“exec-opts“: [“native.cgroupdriver=systemd“]后无法启动的问题

考虑k8s下docker下载镜像太慢&#xff0c;修改了daemon.json&#xff0c;按照手册抄&#xff0c;添加 {"exec-opts": ["native.cgroupdriversystemd"],"registry-mirrors": ["https://kn0t2bca.mirror.aliyuncs.com"] }结果发现k8s起…

9.3.2.1网络原理(UDP)

1.UDP的基本特点:无连接,不可靠传输,面向数据报,全双工. 2.1~1024的端口号有特定的含义,不建议使用.比如21:ftp,22:ssh,80:http,443:https. 3.CRC校验算法:循环冗余校验和,把UDP报中的每个字节都依次进行累加,把累加的结果,放到两个字节的变量中,溢出也无所谓,因为都加了一遍.…

Java多线程(2)---线程控制和线程安全的详细讲解

目录 前言 一.线程控制方法 1.1启动线程--start() 1.2线程睡眠---sleep()方法 1.3中断线程--interrupt() 方法 1.4等待线程---join() 二.线程安全 2.1数据不安全---数据共享 ⭐不安全的演示和原因 ⭐不安全的处理方法 ⭐synchronized的使用 2.2数据不安全---内存可…

性能测试—Jmeter工具

文章目录 性能测试1. 术语介绍2. 方法3. 应用场景4. 工具&#xff08;Jmeter&#xff09;4.1 介绍4.2 元件和组件4.2.2 元件4.2.1 组件 4.3 作用域4.4 参数化4.5 执行脚本 性能测试 1. 术语介绍 响应时间(Response time)&#xff1a;对请求作出响应所需要的时间。 在互联网上对…

QT学习笔记-QT安装oracle oci驱动

QT学习笔记-QT安装oracle oci驱动 0、背景1、环境以及条件说明2、编译驱动2.1 下载oracle instant client2.2 编译qt oci驱动2.2.1 修改oci.pro2.2.2 MinGW64构建套件编译2.2.3 MSVC2019_64构建套件编译 3、访问数据库运行成功 0、背景 在使用QT开发应用的过程中&#xff0c;往…

5G用户逼近7亿,5G发展迈入下半场!

尽管普遍认为5G投资高峰期正在过去&#xff0c;但是从2023年上半年的情况来看&#xff0c;我国5G建设仍在衔枚疾走。 近日举行2023年上半年工业和信息化发展情况新闻发布会上&#xff0c;工信部人士透露&#xff0c;截至今年6月底&#xff0c;我国5G基站累计达到293.7万个&…

LVS负载均衡部署-NAT

文章目录 LVS-NAT模式配置原理实验环境DR添加网卡准备两台Real Server134&#xff1a;145&#xff1a;测试&#xff1a; 修改RS网关配置DR&#xff1a;开启路由转发下载软件配置查看配置 测试 LVS-NAT模式配置 原理 当客户端访问DR时即访问的外网接口然后由DR将流量在本地转发…

C++:模拟堆

模拟堆 维护一个集合&#xff0c;初始集合为空&#xff0c;支持如下几种操作&#xff1a; 1.“I x”&#xff0c;插入一个数x 2.“PM” &#xff0c;输出当前集合中的最小值 3.“DM”&#xff0c;删除当前集合中的最小值&#xff08;当最小值不唯一时&#xff0c;删除最早插入…

番外13:使用ADS进行容差分析(蒙特卡洛分析、灵敏度分析、良率分析、良率优化),以带通滤波器设计为例

番外13&#xff1a;使用ADS进行容差分析&#xff08;蒙特卡洛分析、灵敏度分析、良率分析、良率优化&#xff09;&#xff0c;以带通滤波器设计为例 资源下载 https://download.csdn.net/download/weixin_44584198/88210327 技术背景 容差分析是当前电子可靠性设计中最先进…

Runloop 的五种mode

1.runloop是一个事件驱动的循环,收到事件就去处理,没有事件就进入睡眠. 2.应用一启动主线程被创建后,主线程对应的runloop也被创建,runloop也保证了程序能够一直运行.之后创建的子线程默认是没有runloop的,只有当调用[NSRunLoop currentRunLoop]去获取的时候才被创建. 3.runloo…

【C#】获取已安装的NETFramework版本集合

代码 /// <summary>/// Windows信息/// </summary>public partial class WindowsInfo{/// <summary>/// 获取已安装的NETFramework版本集合/// </summary>/// <returns></returns>public static List<string> GetInstalledNETFramew…

Docker源码阅读 - goland环境准备

docker 源码分为两部分 cli 和 moby&#xff08;docker&#xff09; tips: docker是从moby拷贝过去的&#xff1b;docker整体是一个C-S架构&#xff0c;cli客户端&#xff0c;docker服务端 docker-ce&#xff1a;https://github.com/docker/docker-ce cli&#xff1a;https://…

linux下离线安装docker

linux下离线安装docker 一、安装docker Docker 官网离线安装文档 https://docs.docker.com/engine/install/binaries/ 整理步骤如下&#xff1a; 官网下载 docker 安装包&#xff0c;地址为 https://download.docker.com/linux/static/stable/&#xff0c;如果是x86就选择x…

【数据结构与算法】十大经典排序算法-选择排序

&#x1f31f;个人博客&#xff1a;www.hellocode.top &#x1f3f0;Java知识导航&#xff1a;Java-Navigate &#x1f525;CSDN&#xff1a;HelloCode. &#x1f31e;知乎&#xff1a;HelloCode &#x1f334;掘金&#xff1a;HelloCode ⚡如有问题&#xff0c;欢迎指正&#…

C语言属刷题训练【第八天】

文章目录 &#x1fa97;1、如下程序的运行结果是&#xff08; &#xff09;&#x1f4bb;2、若有定义&#xff1a; int a[2][3]; &#xff0c;以下选项中对 a 数组元素正确引用的是&#xff08; &#xff09;&#x1f9ff;3、在下面的字符数组定义中&#xff0c;哪一个有语法错…

美团软件测试工程师高频面试题和答案

前言 8月底了&#xff0c;马上到了大家的找工作的高峰期了&#xff01;为了帮助大家更好的备战面试和跳槽&#xff0c;可以在众多求职者中脱颖而出&#xff0c;我帮大家准备了丰富的企业真实面试题&#xff0c;大家赶紧收藏吧&#xff01; 1、说下你最近做的项目&#xff0c;你…

DatawhaleAI夏令营第三期机器学习用户新增预测挑战赛baseline新手教程

本教程会带领大家项目制学习&#xff0c;由浅入深&#xff0c;逐渐进阶。从竞赛通用流程与跑通最简的Baseline&#xff0c;到深入各个竞赛环节&#xff0c;精读Baseline与进阶实践技巧的学习。 千里之行&#xff0c;始于足下&#xff0c;从这里&#xff0c;开启你的 AI 学习之旅…

python——案例17:判断某年是否是闰年

案例17&#xff1a;判断某年是否是闰年 判断依据&#xff1a;闰年就是能被400整除&#xff0c;或者能被4整除的年份numint(input(输入年份&#xff1a;))if num%1000: if num%4000: #整百年份的判断print("%s年是闰年"%num) #…

java基础面试

Hashmap和Treemap的区别 1、HashMap无序&#xff0c;TreeMap有序。都不是线程安全的。 2、HashMap覆盖了equals&#xff08;&#xff09;方法和hashcode&#xff08;&#xff09;方法&#xff0c;这使得HashMap中两个相等的映射返回相同的哈希值&#xff1b;TreeMap则是实现了…