当前位置: 首页 > news >正文

vue+element 换肤功能

1.首先建深色和浅色两个主题样式变量样式表,样式表名和按钮中传入的值一样,本例中起名为default.scss和dark.scss
2.在data中定义主题变量名 zTheme:‘defalut’,默认引用defalut.scss,
在点击按钮时切换引用的样式表,达到换肤效果
3.dom中写入主题切换按钮

 /****更换主题按钮*****/
<div class="set-theme"><el-button type="text" @click="setTheme('dark')">深色主题</el-button>  &emsp; &emsp;||<el-button  type="text" @click="setTheme('default')">浅色主题</el-button>
</div>

2.setTheme 方法逻辑处理

 /****更换主题方法*****/setTheme(themeName){this.zTheme = themeNamelocalStorage.setItem('zTheme',themeName)require(`@/assets/styles/theme/${this.zTheme}.scss`)location.reload();/*this.$parent.$forceUpdate()this.$router.go(0);*/},

3.页面加载时调用存储的theme主题

 created() {const route = this.$route; // 获取当前路由信息if (route.path != '/indexs') {  //此路由为三维系统require(`@/assets/styles/index.scss`)}else {return '';}  //因本项目是二维三维系统在一个项目中,为了不影响三维样式,加此代码,通过判断,只有二维时才加载index.scss/***皮肤***/let theme=localStorage.getItem('zTheme')if(theme){this.zTheme = themerequire(`@/assets/styles/theme/${this.zTheme}.scss`)}   

在这里插入图片描述

http://www.lryc.cn/news/291773.html

相关文章:

  • python魔法函数[全面]
  • python实现贪吃蛇小游戏(附源码)
  • 爬虫学习笔记-Cookie登录古诗文网
  • Linux网络状态查看与防火墙管理
  • VxTerm:C++ MFC,在工具栏中增加Edit/ComboBox等组件,打造一个地址栏/搜索栏功能
  • 【Android】屏幕锁
  • springCloud gateway 防止XSS漏洞
  • 美赛摘要写作重点
  • RUST笔记: 动态链接库的创建和使用
  • 「阿里云」幻兽帕鲁个人服务器已上线,3分钟快速搭建
  • @ 代码随想录算法训练营第6周(C语言)|Day36(贪心)
  • 数组打印杨辉三角
  • 【操作系统·考研】文件系统
  • 中国传媒网CEO徐晓艺荣膺第九届金鸥奖“2023年度最佳创新人物”殊荣
  • ElementUI Form:Switch 开关
  • 通俗易懂理解注意力机制(Attention Mechanism)
  • git的分支的使用,创建分支,合并分支,删除分支,合并冲突,分支管理策略,bug分支,强制删除分支
  • 【leetcode100-081到090】【动态规划】一维五题合集1
  • 数据结构-顺序表详解专题
  • 对商业知识和思维的一些小体会
  • 【笔记】计算文件夹的大小
  • 机器学习_常见算法比较模型效果(LR、KNN、SVM、NB、DT、RF、XGB、LGB、CAT)
  • 外包干了8个月,技术退步明显...
  • opencv#41 轮廓检测
  • Websocket基本用法
  • node.js与express.js创建项目以及连接数据库
  • 【Tomcat与网络8】从源码看Tomcat的层次结构
  • Java Agent Premain Agentmain
  • Python实现设计模式-策略模式
  • 详解SpringCloud微服务技术栈:深入ElasticSearch(4)——ES集群