news 2026/10/14 2:52:36

标签属性动态绑定——新手小白篇

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
标签属性动态绑定——新手小白篇

1.在此次教学之前我们先来学习怎么配置环境并且创建vue3

1.1按照以下步骤安装并配置环境

【Node.js官网】
https://nodejs.org
直接不断下一步安装即可!!!很简单!!!

【npm官网】
https://www.npmjs.com

【查看安装的版本】
node -v
npm -v

【查看当前镜像源】
npm get registry

【设置淘宝镜像源(默认镜像源是国外网址,国内访问经常失败,所以要设置淘宝镜像源)】
npm config set registry https://registry.npmmirror.com/

【其他】
1.安装pnpm包管理工具: npm install -g pnpm
2.安装网络请求库axios: npm install axios

1.2创建vue3

1.首先确保已经安装pnpm工具包: npm install -g pnpm (npm install -g xxxx 全局安装工具包,可以直接在命令行使用,否则无法使用)
2.创建脚手架:pnpm create vue
3.配置脚手架相关插件(按需配置)
4.执行以下指令
cd vue-project
pnpm install
pnpm format
pnpm dev

在命令提示符中完成全部操作大概是如图所示

2.标签属性动态绑定

复制图上local到浏览器回车打开网页,然后在打开visual studio code 点击左上角 文件 在下拉窗口选择打开文件夹 选中你项目。

我直接用课堂上老师的代码展示

<template> <!-- ================================================== --> <!-- 第 1 步:为什么需要 v-bind? --> <!-- 已学的 {{ }} 只能写在"标签之间", --> <!-- 不能写在"属性里"!属性想使用 JS 数据,必须用 v-bind --> <!-- ================================================== --> <!-- 【错误示范】href 会变成字面量 "{{ url }}",无法跳转 --> <!-- <a href="{{ url }}">错误写法</a> --> <!-- 【正确写法】v-bind:属性名="JS表达式",属性值不再是写死的字符串 --> <!-- 本来HTML的标签属性,他的值是写死的 通过v-bind修饰后,该标签属性可以被Vue实例动态更新 --> <a v-bind:href="url"> 去 Vue 官网(v-bind 完整写法) </a> <br> <!-- ================================================== --> <!-- 第 2 步:简写形式 --> <!-- v-bind: 可以简写成一个冒号 :,实际开发 99% 都用简写 --> <!-- 冒号后面跟属性名,引号里写 JS 表达式 --> <!-- ================================================== --> <img :src="imgUrl" width="100"> <hr> <!-- ================================================== --> <!-- 第 3 步:动态绑定 class(对象语法,最常用!) --> <!-- :class="{ 类名: 布尔表达式 }" 值为 true 时该类生效 --> <!-- 结合已学的 v-on:数据一变,样式自动变 —— 数据驱动视图 --> <!-- ================================================== --> <!-- 类名hot有时候被激活,有时候失效 --> <p v-bind:class="{ hot: temp >= 30 }"> 气温:{{ temp }}℃ </p> <!-- 当该类生效时,类选择器激活:文字变红加粗 --> <button @click="temp = temp + 5"> +5℃ </button> <button @click="temp = temp - 5"> -5℃ </button> <hr> <!-- ================================================== --> <!-- 第 4 步:绑定布尔属性 disabled --> <!-- :disabled="false" 时按钮可用,为 true 时按钮被禁用 --> <!-- 注意:引号里是 JS 表达式,可以做运算判断 --> <!-- ================================================== --> <p>高温预警时才能点击「一键降温」</p> <button :disabled="temp < 30" @click="temp = 25"> 一键降温至25℃ </button> </template> <script setup> // 组合式 API:ref 创建响应式数据(已学知识点) import { ref } from 'vue' const url = ref('https://cn.vuejs.org/') // 第1步:绑给 a 标签的 href const imgUrl = ref('https://cn.vuejs.org/logo.svg') // 第2步:绑给 img 的 src const temp = ref(25) // 第3、4步:气温数据 </script> <style scoped> /* 唯一的 CSS:气温达到 30℃ 时文字变红加粗 */ .hot { color: red; font-weight: bold; } </style> <!-- ================================================== --> <!-- 课堂总结:v-bind 到底是干嘛的? --> <!-- ================================================== --> <!-- 一句话:{{ }} 管标签内容,v-bind 管标签属性 —— 把 JS 数据绑到属性上,让属性"活"起来 (让只能写死的标签属性变得可动态更新) 【核心对比】 不用 v-bind:属性值是写死的字符串 href="https://vuejs.org" 用了 v-bind:属性值是 JS 表达式 :href="url" 【三个要点】 1. 用途:属性想用变量/表达式,必须加 v-bind(或简写冒号) 2. 本质:引号里从"字符串"变成"JS 表达式",数据一变视图自动更新 3. 简写:v-bind:src 等价于 :src,开发中只用冒号写法 -->

以下是运行结果

最后总结一下

  1. 分工对比
    • {{ }}:作用在标签内容中间,展示文本
    • v-bind:作用在标签属性,动态给属性赋值
  2. 不加v-bind:属性值是固定字符串;加v-bind,引号内变成JS 表达式,支持变量、判断运算
  3. 简写:v-bind:xxx→:xxx,开发一律用冒号简写
  4. 常用场景:绑定href、src、动态 class、disabled、style等属性

核心:v-bind 让原本写死的 HTML 属性,变成跟随 JS 数据动态变化的属性,这就是 Vue 声明式渲染的魅力。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/14 2:52:35

XML批量打补丁工具:精准XPath修改与生产级安全实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/14 2:52:13

ping命令深度解析:从ICMP原理到网络排障实战

1. 别小看这条命令&#xff1a;从一次深夜排障说起凌晨两点&#xff0c;监控告警突然响了——某台业务服务器响应超时&#xff0c;前端页面加载转圈&#xff0c;用户侧已经开始有零星的投诉进来。我揉着眼睛连上跳板机&#xff0c;第一件事不是去看日志&#xff0c;也不是重启服…

作者头像 李华
网站建设 2026/10/14 2:52:10

OSPF与隧道联动防环实战:从路由环路原理到配置边界划分

1. 从一个真实故障场景说起&#xff1a;为什么路由和隧道会互相“打架”先描述一个我在实际网络运维中遇到过多次的典型场景。某公司有两个数据中心&#xff0c;中间通过一条逻辑隧道&#xff08;也就是大家常说的“为屁嗯”&#xff0c;本文统一用“隧道”代称&#xff09;打通…

作者头像 李华
网站建设 2026/10/14 2:52:08

MySQL启动失败status=1/FAILURE排查全攻略

最近好几台服务器上的 MySQL 都出现过同样一个现象&#xff1a;执行systemctl start mysql&#xff0c;提示失败&#xff0c;systemctl status mysql一查&#xff0c;冒出来一行Process: 12345 ExecStart/usr/sbin/mysqld ... (codeexited, status1/FAILURE)。很多朋友一看到st…

作者头像 李华
网站建设 2026/10/14 2:51:41

C语言词频统计:数组与链表实现的底层权衡

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/14 2:50:19

Spring Boot + Vue 漫画信息管理网站毕业设计全攻略

每年都有同学来问我&#xff0c;说毕业设计不知道选什么题。与其去跟风做一个没有业务逻辑的电商平台&#xff0c;倒不如做点能完整展示全栈能力、又有点趣味性的东西。漫画信息管理网站&#xff0c;就是这样一个很合适的选题&#xff1a;它麻雀虽小但五脏俱全&#xff0c;涉及…

作者头像 李华