Vue3 系列教程(三)插值表达式与常用文本指令
前言第2课已掌握Vue3应用的创建、挂载及单文件组件的基础结构本课将聚焦Vue3中最基础的页面渲染方式——插值表达式与文本指令理解不同文本渲染方式的使用规则与适用场景掌握基础数据到页面的渲染逻辑为后续动态数据展示打下基础。1. 插值表达式{{ }}的核心使用规则插值表达式是Vue3中最基础的文本渲染方式通过双大括号语法将组件数据绑定到页面是数据驱动视图的核心体现。1.1 基础语法template div !-- 基础使用渲染data中的普通数据 -- {{ message }} /div /template script export default { data() { return { message: Vue3插值表达式基础示例 } } } /script1.2 支持的语法类型插值表达式内部支持简单的JavaScript表达式可完成基础的运算、逻辑判断等操作template div !-- 算术运算 -- p1 2 {{ 1 2 }}/p !-- 三元表达式 -- p{{ isShow ? 显示文本 : 隐藏文本 }}/p !-- 字符串拼接 -- p{{ Hello name }}/p !-- 调用方法需在methods中定义 -- p{{ formatText(message) }}/p /div /template script export default { data() { return { isShow: true, name: Vue3, message: 原始文本 } }, methods: { formatText(text) { return text.toUpperCase(); } } } /script1.3 核心规则与禁用场景仅支持单个表达式不支持语句如if、for循环、变量声明等不能在HTML属性中使用插值表达式需使用v-bind指令后续课程讲解插值表达式具有响应式特性当数据发生变化时页面会自动更新若数据为undefined或null插值表达式会渲染为空字符串。错误示例禁止使用!-- 错误使用语句而非表达式 -- {{ if (isShow) { return 文本 } }} !-- 错误在HTML属性中使用插值 -- div iditem-{{ id }}/div2. 文本渲染指令v-textv-text是Vue提供的文本渲染指令作用是将数据以纯文本形式渲染到指定元素中功能与插值表达式类似但使用方式不同。2.1 基础语法template !-- v-text指令绑定data中的message数据 -- div v-textmessage/div /template script export default { data() { return { message: v-text指令渲染的文本内容 } } } /script2.2 与插值表达式的核心区别特性插值表达式v-text渲染位置元素内容的任意位置覆盖元素的全部内容空白内容处理初始显示{{ }}闪显初始为空无闪显组合使用可与其他文本混合无法混合其他文本示例对比template !-- 插值表达式可混合其他文本 -- div前缀文本 {{ message }} 后缀文本/div !-- v-text覆盖全部内容无法混合 -- div v-textmessage这部分文本会被覆盖/div !-- 解决插值表达式闪显问题使用v-cloak配合样式 -- div v-cloak{{ message }}/div /template style /* 隐藏未编译的插值表达式 */ [v-cloak] { display: none; } /style3. HTML渲染指令v-htmlv-html用于将包含HTML标签的字符串以HTML形式渲染到页面而非纯文本需注意该指令的安全性风险。3.1 基础语法template !-- v-html渲染包含HTML标签的字符串 -- div v-htmlhtmlContent/div /template script export default { data() { return { htmlContent: h3 stylecolor: #42b983;包含HTML标签的内容/h3 } } } /script3.2 核心注意事项v-html会覆盖元素的所有内容且无法与插值表达式混合使用安全性风险绝对不要使用v-html渲染用户输入的内容如评论、表单输入否则可能导致XSS攻击v-html不支持Vue模板语法渲染的HTML中不会解析Vue的插值、指令等语法性能差异v-html的渲染性能低于v-text和插值表达式非必要场景不建议使用。4. Vue指令的通用规范Vue指令是带有v-前缀的特殊HTML属性遵循统一的使用规范是Vue模板语法的核心组成部分。4.1 核心规范指令前缀固定为v-如v-text、v-html、v-bind指令的值为JavaScript表达式需绑定到组件的响应式数据指令可附加修饰符后续课程讲解用于扩展指令功能指令作用于DOM元素替代原生DOM操作无需手动修改innerText、innerHTML。4.2 与原生DOM操作的对比原生JS实现文本/HTML渲染// 原生JS设置文本document.getElementById(text-box).innerText原生文本;// 原生JS设置HTMLdocument.getElementById(html-box).innerHTMLh3原生HTML/h3;Vue指令实现更简洁无需操作DOMtemplate div idtext-box v-texttextData/div div idhtml-box v-htmlhtmlData/div /template script export default { data() { return { textData: Vue文本, htmlData: h3Vue HTML/h3 } } } /script5. 综合案例多方式文本渲染对比template div classtext-render-demo h2文本渲染方式对比/h2 !-- 插值表达式 -- div classitem h4插值表达式/h4 p{{ baseText }}/p /div !-- v-text -- div classitem h4v-text/h4 p v-textbaseText/p /div !-- v-html -- div classitem h4v-html/h4 p v-htmlhtmlText/p /div /div /template script export default { data() { return { baseText: 基础文本内容, htmlText: span stylecolor: #e63946;包含HTML标签的文本/span } } } /script style scoped .text-render-demo { padding: 20px; border: 1px solid #eee; border-radius: 8px; } .item { margin: 10px 0; padding: 10px; background: #f8f9fa; border-radius: 4px; } /style总结插值表达式{{ }}是基础文本渲染方式支持简单JS表达式可与其他文本混合但存在闪显问题v-text以纯文本形式渲染内容覆盖元素全部内容无闪显问题v-html可渲染HTML内容但存在XSS风险禁止渲染用户输入内容Vue指令统一以v-为前缀替代原生DOM操作使数据渲染逻辑更简洁、易维护。

相关新闻

invokedynamic

invokedynamic

🚀 Java字节码 invokedynamic 深度解析 📚 什么是 invokedynamic? invokedynamic 是 Java 7 引入的字节码指令,用于实现动态语言特性和Lambda表达式。它是 Java 字节码中第5个方法调用指令。 传统的4个调用指令: i…

2026/7/3 18:47:48 阅读更多 →
改进A星算法,机器人路径规划导航A星算法和DWA算法融合,可以实现动态避障,有算法matlab...

改进A星算法,机器人路径规划导航A星算法和DWA算法融合,可以实现动态避障,有算法matlab...

改进A星算法,机器人路径规划导航A星算法和DWA算法融合,可以实现动态避障,有算法matlab源文件,可以直接用。清晨调试机器人底盘时突然想到,传统A星就像拿着纸质地图的旅行者——规划好的路线遇到临时障碍就傻眼了。上个…

2026/7/3 5:16:36 阅读更多 →
基于IEEE 33节点的配电网经济调度 设备包括光伏,风电,燃气轮机,柴油发电机和储能 以综合...

基于IEEE 33节点的配电网经济调度 设备包括光伏,风电,燃气轮机,柴油发电机和储能 以综合...

基于IEEE 33节点的配电网经济调度 设备包括光伏,风电,燃气轮机,柴油发电机和储能 以综合成本最优为目标 包括各设备的调用成本和购电费用以及环境费用 考虑各设备的运行约束和潮流约束 其中潮流使用前推回代法计算 代码可保证完美运行 这年头…

2026/7/3 6:24:28 阅读更多 →

最新新闻

3 种注意力机制改进 YOLOv7:在红外目标检测任务中的对比与《红外与激光工程》投稿适配

3 种注意力机制改进 YOLOv7:在红外目标检测任务中的对比与《红外与激光工程》投稿适配

3种注意力机制改进YOLOv7在红外目标检测中的性能对比与期刊适配指南红外目标检测技术在安防监控、自动驾驶和军事侦察等领域具有重要应用价值。随着深度学习的发展,基于YOLO系列算法的红外目标检测方法不断涌现新突破。本文将聚焦YOLOv7模型,深入分析CBA…

2026/7/8 1:03:08 阅读更多 →
C语言-1

C语言-1

1

2026/7/8 1:03:08 阅读更多 →
Go 零拷贝的代价:从 io.Copy 到 sendfile,我踩了一个性能假象的坑

Go 零拷贝的代价:从 io.Copy 到 sendfile,我踩了一个性能假象的坑

上周在调一个文件传输服务的性能时遇到了一个奇怪的现象。服务本身逻辑很简单:接收客户端上传的文件,处理后存储到后端。压力测试的时候发现,一个 200MB 的文件传输,CPU 占用率跑到 65%,而磁盘 IO 和网络吞吐都只用了不…

2026/7/8 1:01:07 阅读更多 →
Lasso回归坐标下降法 Python 实现:从梯度推导到 200 行代码复现

Lasso回归坐标下降法 Python 实现:从梯度推导到 200 行代码复现

Lasso回归坐标下降法 Python 实现:从梯度推导到 200 行代码复现1. 理解Lasso回归的核心机制Lasso回归(Least Absolute Shrinkage and Selection Operator)是一种特殊的线性回归方法,它在普通最小二乘法的基础上增加了L1正则化项。…

2026/7/8 1:01:07 阅读更多 →
PIC18LF25K40与PAM8904构建智能音频报警系统

PIC18LF25K40与PAM8904构建智能音频报警系统

1. 项目概述:基于PIC18LF25K40与PAM8904的智能通知系统在工业控制、智能家居和安防监控等领域,可靠的事件通知机制是保障系统安全运行的关键环节。本项目采用Microchip的PIC18LF25K40单片机作为控制核心,搭配PAM8904音频驱动芯片,…

2026/7/8 0:59:07 阅读更多 →
PyTorch 2.0+ 张量维度转换:view、reshape、permute 等8种方法性能对比与内存分析

PyTorch 2.0+ 张量维度转换:view、reshape、permute 等8种方法性能对比与内存分析

PyTorch 2.0 张量维度转换:8种核心方法性能对比与内存优化指南在深度学习模型开发中,张量维度转换是最基础却至关重要的操作。PyTorch提供了多达8种维度操作方法,但它们的性能特征和内存行为却大相径庭。本文将深入剖析view、reshape、permut…

2026/7/8 0:55:06 阅读更多 →

日新闻

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: …

2026/7/8 0:00:48 阅读更多 →
MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N1 到批处理的全路径 一、从"功能正确"到"性能可接受"——MyBatis 批量操作的三段式进化 MyBatis 在日常增删改查场景中几乎是无感的——实体映射直观、SQL 控制灵活。但当数据量从千级上升到十万级、百万级,许…

2026/7/8 0:00:48 阅读更多 →
工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

1. 工业负载控制方案概述在工业自动化、电机驱动和照明控制等高需求场景中,可靠地控制电感和电阻负载是核心挑战之一。TPD2015FN作为东芝的8通道高端智能功率开关IC,配合PIC18F45K22微控制器,能够构建一套稳定、高效的负载控制系统。这套组合…

2026/7/8 0:02:48 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻