在Vue3的setup()中如何让CSS变量跟随ref响应式变化?
我在用Vue3的Composition API时,想通过CSS变量动态改变元素颜色。在setup()里用了ref存颜色值,然后在CSS里定义了变量,但怎么都更新不了颜色呢。
试过把颜色值绑定到元素style属性,也能响应,但想用CSS变量统一管理。代码大概是这样:
:root {
--main-color: red;
}
.box {
background: var(--main-color);
}
在setup里这样写:const color = ref('blue');,然后想让CSS变量跟随color变化,但直接改color.value没效果,控制台也没报错,应该用什么方法才能让CSS变量响应变化呢?
Code°心虹
Lv1
用 ref 控制 CSS 变量得手动调用 document.documentElement.style.setProperty
点赞
2
2026-02-05 17:20