vue 一键更换主题颜色

这里提供简单的实现步骤,具体看自己怎么加到项目中

我展示的是vue2 vue3同理

在 App.vue 添加 入口处直接修改

html 复制代码
#app { // 定义的全局修改颜色变量
  --themeColor:#008cff;
}
// 组件某些背景颜色需要跟着一起改变,其他也是同理
/deep/ .ant-btn-primary{
  background-color: var(--themeColor);
}

在某个页面,写一个方法或者是颜色选择器,提供修改的颜色

html 复制代码
updColor () {
                      // 修改app下的                   这个变量        这个颜色
      document.getElementById('app').style.setProperty('--themeColor', 'red')
    },

如果是单页面修改的颜色,或者是单个地方使用, 直接这样修改就可以了

html 复制代码
<style lang="less" scoped>
	.wrapper{
	  background-color: var(--themeColor);
	}
</style>

如果要实现保留修改颜色记录,可以放到vuex或者缓存去加载

相关推荐
kite01215 小时前
浏览器工作原理06 [#]渲染流程(下):HTML、CSS和JavaScript是如何变成页面的
javascript·css·html
крон5 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
coding随想7 小时前
JavaScript ES6 解构:优雅提取数据的艺术
前端·javascript·es6
年老体衰按不动键盘8 小时前
快速部署和启动Vue3项目
java·javascript·vue
小小小小宇8 小时前
一个小小的柯里化函数
前端
灵感__idea8 小时前
JavaScript高级程序设计(第5版):无处不在的集合
前端·javascript·程序员
小小小小宇8 小时前
前端双Token机制无感刷新
前端
小小小小宇8 小时前
重提React闭包陷阱
前端
小小小小宇8 小时前
前端XSS和CSRF以及CSP
前端
UFIT8 小时前
NoSQL之redis哨兵
java·前端·算法