Vue script setup 怎么结合 CSS 变量绑定响应式状态数据

冬伟吖_1450

冬伟吖_1450

2026-10-18

335人浏览

原创

vue 的 script setup 中可通过 v-bind 将 ref 或 computed 响应式绑定为 css 变量,实现动态样式;vue 3.4+ 支持 definestylevariables 宏集中声明并自动转 kebab-case;需注意作用域、层叠优先级及变量声明顺序。

vue script setup 怎么结合 css 变量绑定响应式状态数据

Vue 的 script setup 中可以直接将响应式状态(如 ref 或 computed)绑定到 CSS 变量,实现动态样式更新。关键在于:用 style 标签的 v-bind 语法,把 JS 变量“注入”为内联 CSS 变量,且该绑定是响应式的。

在 template 中用 v-bind 绑定 CSS 变量

这是最常用、最直接的方式。Vue 会自动监听绑定的响应式变量,并在值变化时更新对应 CSS 变量:

  • 在 <template></template> 的根元素(如 <div>)上使用 <code>style="--color: v-bind(color); --size: v-bind(fontSize)
  • v-bind() 内写的是 script 中定义的响应式变量名(无需加 .value,Vue 自动解包)
  • CSS 中通过 var(--color) 引用即可,样式会随变量实时更新
  • 示例:

    vue-composition-api-best-practices
    vue-composition-api-best-practices

    Vue 3 组合式 API 与

    热门下载

    更多
    网站特效
    /
    网站源码
    /
    网站素材
    /
    前端模板

    精品课程

    更多
    相关推荐
    /
    热门推荐
    /
    最新课程
    Vue 教程
    Vue 教程

    共42课时 | 17.1万人学习

    国外Web开发全栈课程全集
    国外Web开发全栈课程全集

    共12课时 | 1.4万人学习

    Vue.js 微实战--十天技能课堂
    Vue.js 微实战--十天技能课堂

    共18课时 | 1.7万人学习