Vue3专题 - 类与样式绑定
大家好我是Java1234_小锋老师最近更新 《一天学会 Vue3 Vite element-plus UI框架 视频教程》专辑感谢大家支持。本课程主要介绍和讲解 Vue3框架Vite构建工具以及element-plus UI框架。Vue3核心知识介绍Vite构建工具使用以及element-plus UI框架的基础组件配置组件Form 表单组件Data 数据展示组件Navigation导航组件Feedback反馈组件Container布局组件介绍和使用。视频教程课件源码打包下载 链接https://pan.baidu.com/s/1o-zRfndo1HHrS_uFroOiCw?pwd1234提取码1234具体位置 - 第四阶段富客户端技术里面Vue3专题 - 类与样式绑定Vue 对class和style做了专门增强可以用字符串、对象、数组来动态控制样式数据一变类名和内联样式自动跟着变。适合高亮当前项、按钮禁用态、主题切换、根据状态换颜色等场景。1. 为什么要动态绑定写死的 class / style 改不了界面状态。用响应式数据驱动模板更清晰!-- 不推荐到处拼字符串 -- div :classbox (active ? active : )/div !-- 推荐对象 / 数组语法更直观 -- div :class{ active: isActive, disabled: isDisabled }/div2. 绑定 HTML class2.1 对象语法最常用对象的key 是类名value 为真时才会加上该类script setup /** * class 对象语法 Demo * 根据开关动态添加 / 移除类名 */ import { ref } from vue const isActive ref(true) const hasError ref(false) function toggle() { isActive.value !isActive.value } /script template !-- isActive 为 true 时有 activehasError 为 true 时有 text-danger -- div :class{ active: isActive, text-danger: hasError } 动态 class 示例 /div button clicktoggle切换 active/button button clickhasError !hasError切换错误样式/button /template style .active { font-weight: bold; color: #1677ff; } .text-danger { color: #ff4d4f; } /style运行截图也可以把对象提成变量或计算属性import{reactive,computed}fromvueconstclassObjreactive({active:true,text-danger:false})// 或用 computed依赖变了自动更新constclassObj2computed(()({active:isActive.value!error.value,text-danger:error.value}))div :classclassObj/div2.2 数组语法一次绑定多个类名元素可以是字符串也可以再嵌套对象script setup /** * class 数组语法 Demo */ import { ref } from vue const activeClass ref(active) const errorClass ref(text-danger) const isActive ref(true) /script template !-- 固定两个类 -- div :class[activeClass, errorClass]数组绑定/div !-- 数组里再写对象按条件决定是否加某类 -- div :class[isActive ? activeClass : , { text-danger: true }] 数组 三元 / 对象 /div /template style .active { font-weight: bold; color: #1677ff; } .text-danger { color: #ff4d4f; } /style运行截图2.3 和普通 class 共存静态class和动态:class可以写在一起最终会合并div classbox :class{ active: isActive }/div !-- isActive 为 true 时结果classbox active --3. 绑定内联 style3.1 对象语法:style绑定一个CSS 属性对象可用驼峰或短横线script setup /** * style 对象语法 Demo * 用响应式数据控制颜色和字号 */ import { reactive } from vue const styleObj reactive({ color: #1677ff, fontSize: 20px // 驼峰写法等价于 font-size }) function bigger() { styleObj.fontSize 28px styleObj.color #52c41a } /script template p :stylestyleObj动态内联样式/p button clickbigger变大变绿/button /template运行截图多组 style 对象可以数组合并后面的会覆盖前面的同名属性div :style[baseStyle, overrideStyle]/div3.2 常用小技巧!-- 直接在模板里写对象也可以 -- p :style{ color: activeColor, fontSize: fontSize px }/p !-- 自动加浏览器前缀如 transform -- div :style{ transform: rotate(10deg) }/div4. 入门综合 Demo一个小面板点击切换高亮并改背景色和字号。script setup /** * 类与样式绑定综合 Demo * - class控制是否高亮 * - style控制背景色和字号 */ import { ref, reactive } from vue const isHighlight ref(false) const boxStyle reactive({ backgroundColor: #f5f5f5, fontSize: 16px, padding: 16px, borderRadius: 8px }) /** 切换高亮并同步改样式 */ function toggleHighlight() { isHighlight.value !isHighlight.value if (isHighlight.value) { boxStyle.backgroundColor #e6f4ff boxStyle.fontSize 20px } else { boxStyle.backgroundColor #f5f5f5 boxStyle.fontSize 16px } } /script template div classpanel :class{ highlight: isHighlight } :styleboxStyle 当前状态{{ isHighlight ? 高亮 : 普通 }} /div button clicktoggleHighlight切换高亮/button /template style .panel { border: 1px solid #d9d9d9; margin-bottom: 12px; } .highlight { border-color: #1677ff; font-weight: bold; color: #1677ff; } /style运行效果预期初始灰色背景、普通边框点击按钮加上highlight类背景变浅蓝、字变大变蓝再点一次恢复普通样式运行截图

相关新闻

深度解析Dalamud框架:构建高性能FFXIV插件的企业级解决方案

深度解析Dalamud框架:构建高性能FFXIV插件的企业级解决方案

深度解析Dalamud框架:构建高性能FFXIV插件的企业级解决方案 【免费下载链接】Dalamud FFXIV plugin framework and API 项目地址: https://gitcode.com/GitHub_Trending/da/Dalamud Dalamud是一个专为《最终幻想14》(FFXIV)设计的插件…

2026/8/5 13:56:11 阅读更多 →
等保1-3级实战解析:从合规基线到安全能力建设

等保1-3级实战解析:从合规基线到安全能力建设

1. 项目概述:从“合规”到“实战”的网络安全基线 干了十几年信息安全,从乙方测评机构到甲方企业安全负责人,我经手过的等保项目少说也有上百个。每次和刚入行的朋友聊起“等保”,最常听到的反馈就是:“太复杂了&#…

2026/8/5 13:56:11 阅读更多 →
GetQzonehistory:QQ空间历史数据完整备份与归档技术方案

GetQzonehistory:QQ空间历史数据完整备份与归档技术方案

GetQzonehistory:QQ空间历史数据完整备份与归档技术方案 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory GetQzonehistory是一个专业的Python工具,专门用于获取QQ…

2026/8/5 13:56:11 阅读更多 →

最新新闻

微信聊天记录永久保存的完整指南:WeChatMsg开源工具让你真正掌控数字记忆

微信聊天记录永久保存的完整指南:WeChatMsg开源工具让你真正掌控数字记忆

微信聊天记录永久保存的完整指南:WeChatMsg开源工具让你真正掌控数字记忆 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub…

2026/8/5 20:06:54 阅读更多 →
Unity ECS实战:用数据导向技术栈实现大规模Boids群体模拟

Unity ECS实战:用数据导向技术栈实现大规模Boids群体模拟

1. 项目概述:当Boids算法遇上ECS如果你玩过《深海迷航》里成群的鱼群,或者《刺客信条》里熙熙攘攘的人群,一定对那种既混乱又和谐的群体运动印象深刻。这种效果背后,往往离不开一个经典的算法——Boids。它用三条简单的规则&#…

2026/8/5 20:06:54 阅读更多 →
基于YOLOv8+pyqt5的火焰烟雾检测系统2123设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于YOLOv8+pyqt5的火焰烟雾检测系统2123设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于YOLOv8pyqt5的火焰烟雾检测系统2123设计源文件万字报告讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码 标价即售价内含21527张火焰烟雾数据集包含smoke,fire,2类也可自行替换模型,使用该界面做其他检测不含…

2026/8/5 20:06:54 阅读更多 →
VueTorrent终极体验:现代化qBittorrent远程管理界面深度评测

VueTorrent终极体验:现代化qBittorrent远程管理界面深度评测

VueTorrent终极体验:现代化qBittorrent远程管理界面深度评测 【免费下载链接】VueTorrent The sleekest looking WEBUI for qBittorrent made with Vuejs! 项目地址: https://gitcode.com/gh_mirrors/vu/VueTorrent 在数字内容管理日益重要的今天&#xff0c…

2026/8/5 20:05:54 阅读更多 →
Unity URP轮廓渲染方案:UnityFx.Outline集成与性能优化指南

Unity URP轮廓渲染方案:UnityFx.Outline集成与性能优化指南

1. 项目概述:为什么我们需要一个专门的URP轮廓渲染方案? 在Unity的Universal Render Pipeline(通用渲染管线,简称URP)下做项目,尤其是涉及到角色高亮、交互提示或者特殊视觉效果时,轮廓渲染&…

2026/8/5 20:05:54 阅读更多 →
5分钟掌握:如何用开源工具免费下载网易云和QQ音乐的高质量LRC歌词

5分钟掌握:如何用开源工具免费下载网易云和QQ音乐的高质量LRC歌词

5分钟掌握:如何用开源工具免费下载网易云和QQ音乐的高质量LRC歌词 【免费下载链接】163MusicLyrics 云音乐歌词获取处理工具【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 还在为音乐播放器缺少歌词而烦恼吗&#xf…

2026/8/5 20:05:54 阅读更多 →

日新闻

Java缓存框架:JetCache

Java缓存框架:JetCache

TOC 一、简介 JetCache 是一个 Java 缓存抽象框架,为不同的缓存解决方案提供了统一的使用方式。 它提供的注解比 Spring Cache 更加强大。 JetCache 的注解支持原生 TTL、两级缓存以及在分布式环境中的自动刷新功能,同时你也可以通过代码直接操作 Cach…

2026/8/5 0:00:43 阅读更多 →
AD 铺铜设置十字连接,过孔全连接,新版AD的简单设置

AD 铺铜设置十字连接,过孔全连接,新版AD的简单设置

需求:通孔焊盘 十字花;过孔 Via 实心直连;贴片焊盘按需设置 AD 测试版本AD24 很多工程师踩坑:全部统一十字,导致接地过孔阻抗高、大电流发热! 一、快捷键打开规则 PCB 界面按下:D R 展开…

2026/8/5 0:00:43 阅读更多 →
AI素描转换技术深度拆解(2024最新论文+工业级落地代码):从Stable Diffusion ControlNet到LoRA微调全链路解析

AI素描转换技术深度拆解(2024最新论文+工业级落地代码):从Stable Diffusion ControlNet到LoRA微调全链路解析

更多请点击: https://kaifayun.com 第一章:AI生成素描效果 AI生成素描效果是计算机视觉与风格迁移技术融合的典型应用,其核心在于将彩色照片或RGB图像转换为具有手绘质感、明暗对比强烈、边缘清晰的单色素描图像。该过程通常依赖于深度学习模…

2026/8/5 0:00:43 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/5 15:00:43 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/5 13:13:56 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/5 10:20:36 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/4 13:38:24 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/4 11:09:16 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/4 13:38:40 阅读更多 →