在vue3中Element Plus切换主题

2023-05-16

  一共2种方法。

目录

第一种

第二种


第一种

暗黑模式,使用useDark,可以不用安装Element Plus,只切换页面的背景颜色,不改变Element Plus控件的颜色,本案例安装了Element Plus。

1.先建立一个可运行的程序

2.创建useDark.js

import {
	ref
} from 'vue'

export function useDark() {
	const isDark = ref(false)

	const toggle = () => {
		isDark.value = !isDark.value
		if (isDark.value) {
			document.documentElement.classList.add('dark')
		} else {
			document.documentElement.classList.remove('dark')
		}
	}

	return {
		isDark,
		toggle
	}
}

3.HelloWorld.vue代码

<template>
	<div :class="{ dark: isDark }">
		<h1>{{ msg }}</h1>
		<el-button type="primary">Primary</el-button>
		<h1>Dark Mode Demo</h1>
		<p>Current mode: {{ isDark ? 'Dark' : 'Light' }}</p>
		<button @click="toggleTheme">Toggle Theme</button>
	</div>
</template>
<script setup>
	import {
		ref
	} from 'vue'
	import {
		useDark
	} from './useDark'
	defineProps({
		msg: String
	})

	const dark = useDark()

	const isDark = ref(dark.isDark)
	const toggleTheme = () => {
		dark.toggle()
	}
	const count = ref(0)
</script>
<style>
	.dark {
		background-color: #333;
		/* red */
		color: #fff;
	}
</style>

 4.效果

点击切换按钮,就可以切换暗黑模式了

5.拓展

可以把颜色改成别的颜色,例如改成红色,这样就可以形成2种颜色的切换了

 

 源码:

https://download.csdn.net/download/u012563853/87537505

第二种

1.首先用HBuilder X建立一个vue3项目,如图所示

2.把不需要的代码删除,增加切换按钮

HelloWorld.vue代码

<template>
	<div>
		<el-button type="primary">Primary</el-button>
		<el-switch @click="toggleDarkMode()" v-model="value1" />
	</div>
</template>

<script setup>
	import {
		ref
	} from 'vue'

	const value1 = ref(true)
	const isDarkMode = ref(false)
	const toggleDarkMode = () => {
		isDarkMode.value = !isDarkMode.value
		document.body.classList.toggle('dark-mode')
	}
</script>



<style scoped>
	a {
		color: #42b983;
	}
</style>

3.命令安装

cnpm install element-plus --save

  

4.main.js代码

import { createApp } from 'vue'
import App from './App.vue'
 
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import 'element-plus/theme-chalk/dark/css-vars.css'//这句是暗黑模式切换
 
const app = createApp(App)
 
app.use(ElementPlus)
app.mount('#app')

5.找到css-vars.css文件

在里面增加代码

/* 暗黑模式 */
.dark-mode {
	background-color: #1f1f1f;
	/* background-color: #F53181; */
	color: #fff;

	/*  .el-button {
    background-color: #333;
    color: #fff;
  }

  .el-input {
    background-color: #333;
    color: #fff;
  } */
}

6.效果

 

 

 拓展:

整体修改控件的颜色

 

<template>
	<h1>{{ msg }}</h1>
	<el-button type="primary">Primary</el-button>
	<el-switch v-model="value1" />
	<el-switch v-model="value2" class="ml-2" style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949" />
</template>
<script setup>
	import {
		ref,
		onMounted
	} from 'vue'

	defineProps({
		msg: String
	})
	const value1 = ref(true)
	const value2 = ref(true)
	onMounted(() => {
		document.body.style.setProperty('--el-color-primary', '#E6196D');
		document.body.style.setProperty('--el-color-primary-light-9', '#95d475');
		document.body.style.setProperty('--el-color-primary-light-3', '#95d475');
	})

	const count = ref(0)
</script>
<style scoped>
</style>

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在vue3中Element Plus切换主题 的相关文章

  • 模拟Http发送get、post、put、delete请求

    最近在公司要定义和实现Restful接口 xff0c 需要模拟Http请求来验证请求是否能进入接口 xff0c 现在把学习的东西记录下来以备以后查询 首先说一说模拟get请求 xff0c get请求最简单的方式是通过地址栏输入地址和参数 这
  • ubuntu 上vscode gdb可视化源码调试live555

    目录 1 ubuntu 下载安装vscode 2 vscode 添加插件 3 下载live555源码 4 live555 生成makefile 5 vscode 打开目录 开始编译 6 0 添加修改调试配置 7 0 打断点 xff0c 愉快
  • linux运行jar文件Invalid or corrupt jarfile错误

    今天在项目中遇到一个很坑爹的问题 xff0c 用eclipse导出来的jar文件 xff0c 在window系统下可以正常使用 xff0c 但是讲jar传到linux环境就不能正常使用了 总是提示Invalid or corrupt jar
  • 【Linux应用】mdadm失败:RUN_ARRAY fail:Invalid argument

    1 简介 mdadm xff0c lvm工具提供强大的动态磁盘管理功能 xff0c 只是操作RAID的用户态工具而已 xff0c 两者都需要内核md的支持 xff0c 故使用前需查看内核是否支持md xff0c 如果不支持需重新编译内核 如
  • VMware虚拟机安装黑群晖7.0教程

    教程仅供参考 xff0c 不当之处多多理解 本篇教程主要讲解黑群晖 xff08 DS918 43 xff09 的详细安装教程 Tip 本教程本教程只用 学习使用 xff0c 有条件 xff0c 长期使用的朋友推荐从正规官方渠道入手 1 首先
  • Windows11 安装WSA(Android)教程

    Ps 安装WSA必要条件 电脑系统已经更新为Windows11 22000正式版系统开启处理器虚拟化支持 安装步骤 1 右键开始 运行 control exe 程序和功能 启用关闭windows功能 2 开启或关闭 Windows 功能 勾
  • 群晖修改默认使用root权限登录SSH教程

    群辉默认不允许SSH默认使用ROOT登陆 xff0c 只能用admin登陆 xff0c 从而使权限得到一定限制 xff0c 导致使用WINSCP时部分文件夹无法显示或提示权限不够 xff0c 那么应该怎么修改呢 xff1f 方法如下 xff
  • VMware虚拟机安装黑群晖7.1

    之前发布了7 0的版本群辉引导 xff0c 用的人还挺多的 xff0c 这次官网又出了7 1新版本 xff0c 我也是快马加鞭的给更新出来了 使用方法 xff1a 1 首先解压安装包 xff0c 双击解压出来的DSM918或者是3615 v
  • ESXi8.0 虚拟机安装黑群晖7.1.1

    ESXi虚拟机安装群辉7 1 一 准备工作 xff1a ESXi虚拟机一台 xff0c 版本任意 群辉VMDk引导文件 xff08 文章末尾有提供下载 xff09 群辉系统安装 xff08 pat xff09 文件 支持兼容情况 xff1a
  • 零刻 SEi12 Pro,ALL IN ONE搭建教程

    一台mini的NUC能做什么 xff1f 当然每个人的心里都会有着不同的答案 xff0c 既然是一台Mini主机那就肯定少不了部署一个All In One来榨干他的性能 今天我就大家带来一个部署All In One的详细教程 xff0c 希
  • [零刻]EQ12 N100 迷你主机:从开箱到安装ESXi+虚拟机

    开箱先上图 xff1a 配置详情 xff1a EQ12采用了Intel最新推出的N100系列的处理 xff0c 超低的功耗 xff0c 以及出色的CPU性能用来做软路由或者是All in one 相当不错 x
  • [零刻]EQ12迷你主机设置来电开机自启教程

    EQ12 来电自启需通过BIOS设置 断电前开机状态则来电后自动开机 xff0c 关机状态则不会自动开机 操作步骤 xff1a 1 首先关闭主机 xff0c 按下电源后 xff0c 当屏幕出现logo后 xff0c 迅速按下键盘上的Del键
  • C语言习题:字符串操作函数练习题目

    1 将包含字符数字的字符串分开 使得分开后的字符串前一部分是数字后一部分是字母 例如 h1ell2o3 gt 123hello span class token macro property span class token directi
  • Java单元测试实践-08.Stub、Replace、Suppress静态方法

    Java单元测试实践 00 目录 xff08 9万多字文档 43 700多测试示例 xff09 https blog csdn net a82514921 article details 107969340 1 Stub Replace S
  • [零刻]EQ12安装PVE虚拟机教程

    PVE虚拟机简介 Proxmox VE是一个运行虚拟机和容器的平台 基于Debian Linux xff0c 完全开源 为了获得最大的灵活性 xff0c 实现了两种虚拟化技术 基于内核的虚拟机 KVM 和基于容器的虚拟化 LXC 一个主要的
  • [零刻]EQ12&EQ12Pro安装OpenWRT软路由教程

    OpenWRT系统安装 安装前准备 1 U盘一个 2 WePE写盘工具 3 Openwrt固件 4 Img镜像写盘工具 安装步骤 xff1a 1 首先下载WePE写盘工具 xff0c 制作一个PE系统安装环境 xff0c 启动软件后 xff
  • [零刻]EQ12&EQ12Pro安装原厂系统教程

    有些小伙伴购买的准系统的版本因为不带内存和硬盘 xff0c 需要自己进行安装系统 xff0c 对于小白来说还是比较困难的 xff0c 在这里推荐大家使用原厂的系统 xff0c 里面自带驱动安装好后就可以直接使用 使用原厂系统包安装步骤 xf
  • Esxi8.0安装Ubuntu系统教程

    本篇教程主要教大家怎么在ESXi8 0虚拟机上安装Ubuntu系统 xff0c 首先安装Ubuntu需要准备一个ISO系统镜像文件 xff0c 我们可以去Ubuntu官网下载 Ubuntu官网 xff1a https ubuntu com
  • [零刻]EQ12&EQ12Pro调整风扇转速教程

    调整 CPU 风扇转速可以有不同的用途 xff0c 具体取决于您的计算机和使用情况 降低噪音 xff1a 如果您的风扇的噪音很大 xff0c 可以通过降低 CPU 风扇的转速来减少噪音 这可以通过在 BIOS 或中设置 CPU 风扇转速控制
  • [零刻]EQ12&EQ12Pro调整最低功耗教程

    在使用EQ12作为软路由的时候 xff0c 因为要不间断工作 xff0c 功耗就非常关键了 xff0c 所以并不需要太高的功耗 xff0c 所以接下来我教你怎么设置以最低功耗运行 具体操作步骤 xff1a 1 先关闭电脑 xff0c 按下电

随机推荐

  • 动态更新阿里云DDNS解析记录的IPv6地址,随时随地用域名远程访问自己的电脑【如何远程访问家里的电脑】

    远程访问电脑 日志简介要求1 IPv6网络1 1检查光猫是否支持IPv61 2检查路由器是否支持并开启IPv6 xff08 没有路由器的跳过这一步 xff09 1 3配置电脑防火墙1 3 1允许ICMPv6协议通过防火墙1 3 2文件共享S
  • 一个好用的js压缩加密网站

    js加密网站 我是vue的js xff0c 用了好几个加密网站得出的结果会有错 xff0c 这个挺好
  • alibaba pc safe service无法删除,一直在后台运行怎么办?

    对付流氓软件 xff0c 应当使用师夷长技以制夷的办法 xff0c 下载一个腾讯电脑管家 xff0c 然后下载里面的文件粉碎机 xff0c 在任务管理器找到对应的alibaba pc safe service服务 xff0c 点击进入具体的
  • APP流量变现之穿山甲广告平台接入

    1 首先百度搜索 穿山甲广告投放 xff0c 第一个出现的链接就是开发者官网 xff0c 截图如下 xff1a 2 进入之后点击注册 xff0c 然后登陆 xff08 这一步穿山甲超级简单 xff0c 如果不着急提现收益的话 xff0c 可
  • spss统计分析基础教程(上)--自学

    64 TOC 目录 xff09 第一章 四种窗口 数据窗口 输出窗口 语法窗口 脚本窗口 菜单 1 文件 xff1a 新建 打开 保存 另存为 将文件标记为只读 xff1a 如果之后保存文件 xff0c 则只能重命名并另存 重新命名数据集
  • OpenWrt 内的阿里云盘 WebDAV 做磁盘使用

    最近在玩OpenwWrt的时候 xff0c 在刷的固件里看到预装的阿里云盘 WebDAV xff0c 加上最近刚刚开始用阿里云 xff0c 不限速 xff0c 非常快 xff0c 通过这个服务 xff0c 可以直接把阿里云的文件架挂载在本地
  • VS2022中使用Copilot

    Copilot可以自动帮你写代码 1 打开vs2022 点击扩展 xff0c 在里面搜索copilot安装 2 安装完成后 xff0c 左下角有个小图标就是copilot 3 点击登录 会弹框 点击确定后 xff0c 跳转到网站 xff0c
  • CSS/SCSS/LESS和自适应布局/响应式布局详解

    在开发前端的时候 xff0c 界面布局尤为重要 xff0c 要布局的非常合理 xff0c 好看 xff0c css是必不可少的 xff0c 然后是各种布局 xff0c 使用这些布局 xff0c 进行混合搭配 xff0c 最终的目的都是开发一
  • 响应式布局之viewport-超级简单

    之前文章CSS布局之详解 故里2130的博客 CSDN博客 上面的文章可以实现响应式布局 xff0c 根据浏览器的大小变化而变化 xff0c 但是相对于viewport来说 xff0c 之前的还是有点复杂 xff0c 而使用viewport
  • .net6API使用AutoMapper和DTO

    AutoMapper xff0c 是一个转换工具 xff0c 说到AutoMapper时 xff0c 就不得不先说DTO xff0c 它叫做数据传输对象 Data Transfer Object 通俗的来说 xff0c DTO就是前端界面需
  • 手机/移动端的UI框架-Vant和NutUI

    下面推荐2款手机 移动端的UI框架 其实还有很多的框架 xff0c 各个大厂都有UI框架 目前 xff0c 找来找去 xff0c 只有腾讯的移动端是setup语法写的TDesign xff0c 其他大厂 xff0c 虽然都是VUE3写的 x
  • 使用uniapp创建小程序和H5界面

    uniapp的介绍可以看官网 xff0c 接下来我们使用uniapp创建小程序和H5界面 xff0c 其他小程序也是可以的 xff0c 只演示创建这2个 xff0c 其实都是一套代码 xff0c 只是生成的方式不一样而已 uni app官网
  • 使用NutUI创建小程序和H5界面

    做开发的时间长了 xff0c 技术都是通用的 xff0c 创建小程序和H5界面有很多的UI xff0c 本章节演示使用NutUI来创建 xff0c 官网 xff0c NutUI 移动端 Vue3 小程序组件库 1 使用HBuilder X创
  • 如何开发微信小程序呢

    也许很多人对小程序 xff0c H5程序 xff0c Vue xff0c 网页程序 xff0c PC端程序认识比较模糊 xff0c 因为这些跨度非常的大 xff0c 很少人会一次性全部接触 xff0c 甚至只是听说过 xff0c 并不了解其
  • .NET6中使用GRPC详细描述

    Supported languages gRPC xff0c 官网 至于原理就不说了 xff0c 可以百度原理之后 xff0c 然后再结合代码 xff0c 事半功倍 xff0c 就能很好理解GRPC了 目录 一 简单使用 二 实际应用 一
  • spss统计分析基础教程(下)--自学

    目录 xff09 第十二章分布类型的检验12 1假设检验的基本思想12 2正态分布检验K S检验的原理 12 3二项分布检验12 4游程检验12 5蒙特卡罗方法 第十三章连续变量的统计推断 xff08 一 xff09 t检验13 1t检验概
  • uniapp学习记录

    目录 1 布局使用flex布局 2 rpx和界面自适应 xff0c 设计稿是750rpx 3 首页不显示tabBar 4 跳转页面 启动跳转页面 5 uniapp中页面生命周期 传值 6 颜色使用 7 字体使用 8 SCSS CSS中获取j
  • uniapp中调用.net6 webapi

    使用uniapp开发程序时 xff0c 不管是小程序 xff0c 还是H5界面 xff0c 它们只是一个显示界面 xff0c 也就是只充当前台界面 xff0c 那么我们后台使用 net6 webapi写业务逻辑 xff0c 然后前端访问后端
  • vue3中前端处理不同数据结构的JSON

    有时候 xff0c 后端返回的JSON数据格式 xff0c 是前端不需要的格式类型 xff0c 这时 xff0c 要么让后端修改 xff0c 你要什么格式 xff0c 那么让后端大哥哥给你返回什么格式 但是有时候不尽人意 xff0c 后端大
  • 在vue3中Element Plus切换主题

    一共2种方法 目录 第一种 第二种 第一种 暗黑模式 xff0c 使用useDark xff0c 可以不用安装Element Plus xff0c 只切换页面的背景颜色 xff0c 不改变Element Plus控件的颜色 xff0c 本案