首页 > 其他分享 >在style中使用v-bind

在style中使用v-bind

时间:2022-09-01 16:44:55浏览次数:60  
标签:style 变量 样式 bind 绑定 color 使用

在style中使用v-bind

最近在公司写项目的时候想实现一个更改主题的功能,查阅网上资料大家给了多种方案,但是其中一种方案比较吸引我,卧槽?什么东西,Vue3可以在style中使用v-bind?
WDF?!!!赶紧试试!

<script setup>
 // 这里可以是原始对象值,也可以是ref()或reactive()包裹的值,根据具体需求而定
 const theme = {
   color: 'red'
 }
</script>

<template>
<p>hello</p>
</template>

<style scoped>
 p {
   color: v-bind('theme.color');
 }
</style>

具体实现就如上,用法可以说相当简单了
Vue3通过给style样式中v-bind绑定,其实就是给css变量绑定,在绑定的数据更新时调用CSSStyleDeclaration.setProperty通知CSS更新

优缺点

  • 优点

    • 不用重新加载样式文件,在样式切换时不会有卡顿
    • 在需要切换主题的地方利用v-bind绑定变量即可,不存在优先级问题
    • 新增或修改主题方便灵活,仅需新增或修改JS变量即可,在- v-bind()绑定样式变量的地方就会自动更换
  • 缺点

    • IE兼容(想笑)
    • 首次加载的时候可能会多花一点时间获取样式
    • 只要绑定了,就会在绑定位置把属性编译成CSS变量,可能达到一定数量的时候会出现某些性能问题

标签:style,变量,样式,bind,绑定,color,使用
From: https://www.cnblogs.com/JsonPig/p/16647037.html

相关文章

  • 如何使用物联网低代码平台进行工作表管理?
    工作表是AIRIOT物联网低代码平台的主要功能之一,主要用来自定义业务表单,实现数据同步及业务联动,可同步本地及网络数据库,实现平台数据及第三方系统数据同步。AIRIOT工作表管......
  • 使用IDEA新建普通的Java项目
    1.选择左侧的Java,然后什么也不选,进入下一步2.这里是选择生成项目时是否创建Java文件,一般不选3.输入项目名,选择项目路径4.创建完成,项目结构如下所示......
  • 记一次使用docker搭建禅道
    相关docker-compose.yml内容如下version:'3.3'services:zentao:container_name:zentaoports:-'10011:80'volumes:......
  • MYSQL数据库使用
    1.创建数据库createdatabase库名;2.确认数据库信息(所有的库名都显现)showdatabases; -->可查看是否创建成功了。3.指定或切换数据库  use数据库名4.显示当前使......
  • 使用 kubectl patch 修改 Kubernetes objects
    为了能够修改Kubernetes对象,我们可以使用kubectledit以交互方式进行修改。如果我们需要测试值,它可以派上用场,但它使自动化变得更加困难。如果我们需要一种使用非交互式命......
  • .net core中AOP的使用(一)
    理解AOPAOP全称AspectOrientedProgramming,即面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。我理解其实就是在程序运行时,动态的将需......
  • vue项目中main.js使用方法详解
    vue项目中main.js使用方法详解目录第一部分:main.js文件解析第二部分:Vue.use的作用以及什么时候使用Vue.use是什么?(官方文档)Vue.use()什么时候使用?补充:关于main.js方便小技......
  • vue方法中的方法怎么同步顺序执行_vue方法同步(顺序)执行:async/await使用 , 使用async搭
    vue方法中的方法怎么同步顺序执行_vue方法同步(顺序)执行:async/await使用项目中有一个地方需要获取到接口返回值之后根据返回值确定之后执行的步骤,使用async搭配await实......
  • .Net6 Api 里使用版本控制(Versioning)
    NetCoreApi接口版本管理简单介绍感谢创建ASP.NETCoreWebApi本次操作环境条件创建项目versioning的版本控制的方法第一步,通过Nuget安装包第二步,在Startup.cs里的Con......
  • 使用fiddler中url替换法进行替换请求ip或者域名
    一、使用fiddler中url替换法进行替换请求ip或者域名1、准备一个即将要替换的测试域名如:www.baidu.com2、抓包查看当前需要进行替换的域名;如:www.douban.com3、进行替换......