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或者缓存去加载

相关推荐
铁皮饭盒22 分钟前
Bun 哪比 Node.js 快?
javascript·后端
JieE2128 小时前
LeetCode 56. 合并区间|超清晰 JS 图解思路,面试高频区间题
javascript·算法·面试
runnerdancer9 小时前
LLM是怎么处理messages数组的,提示词缓存又是什么
前端·agent
陈随易9 小时前
VSCode的Copilot扩展支持接入DeepSeek,Kimi了!
前端·后端·程序员
我不是外星人11 小时前
有了 Harness Engineering ,真的还需要研发工程师吗?
前端·后端·ai编程
candyTong11 小时前
RTK 技术原理:一次典型会话里,80% 上下文是怎么省下来的
javascript·后端·架构
IT_陈寒13 小时前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
Jackson__14 小时前
分享一个横向滚动案例,带悬停暂停,通用性很强
前端
MariaH15 小时前
git rebase的使用
前端
_柳青杨15 小时前
深入理解 JavaScript 事件循环
前端·javascript