【前端】vue3的指令

介绍

Vue 是一个用于构建用户界面的渐进式 JavaScript 框架,核心关注视图层,通过组件化和响应式系统帮助开发者高效构建动态的 Web 应用。Vue 3 引入了更高效的响应式引擎、组合式 API 以及更好的 TypeScript 支持。

指令系统

Vue 的指令以 v- 前缀开头,用于在模板中为元素附加特定的行为或响应式绑定。

核心结构控制

  • v-if:基于表达式真值在 DOM 中有条件地渲染或销毁元素。
  • v-else-if :配合 v-if 在同一链路上提供额外的条件分支。
  • v-else :搭配 v-if/v-else-if 提供兜底渲染分支。
  • v-show :通过切换元素的 display 样式来控制显示与隐藏,元素不会从 DOM 中移除。
  • v-for:基于数组、对象或数字生成列表渲染,支持条目和索引/键绑定。

数据绑定

  • v-bind :将表达式的值绑定到元素的属性、组件的 props 或指令参数,可缩写为冒号 :。
  • v-model :在表单控件与应用状态之间创建双向数据绑定,支持修饰符(如 .trim、.lazy、.number)。
  • v-text :将元素的 textContent 设置为表达式的值,避免直接使用 Mustache 语法。
  • v-html :将元素的 innerHTML 设置为表达式的值,允许插入原始 HTML(需注意 XSS 风险)。

事件处理

  • v-on :监听 DOM 事件并在事件触发时执行表达式或方法,可缩写为 @,支持事件修饰符和键位修饰符。

插槽与模板控制

  • v-slot :声明插槽内容或作用域插槽,支持具名和解构语法,是取代 slot 特性的统一指令。
  • v-is :在 DOM 模板中动态设置实际渲染的组件类型,通常用于 <component> 替代方案。

性能与编译提示

  • v-once:只渲染元素和组件一次,后续状态更新不会触发重新渲染。
  • v-memo:基于指定表达式的结果决定是否跳过其子树的更新,用于性能优化。
  • v-pre:跳过该元素及子元素的编译过程,保留原始 Mustache 语法或优化性能。

其他实用指令

  • v-cloak:配合 CSS 隐藏未编译完成的模板内容,编译结束后自动移除。
  • 自定义指令 :通过 app.directive 定义 v-xxx 形式的指令,在元素挂载、更新和卸载阶段注入复用逻辑。

以上指令构成 Vue 3 模板的基础能力,能够满足从数据绑定、控制流、事件处理到性能优化的多种场景。

相关推荐
jay神13 分钟前
基于 YOLOv8 的轴承缺陷检测(Web 版)
前端·人工智能·yolo
jay神21 分钟前
基于 YOLOv8 的森林火灾检测系统(Web 版)
前端·yolo
code2cat26 分钟前
HTML基础篇之第一张网页:从index.html到浏览器里的任务清单
前端·html
miss1 小时前
AI 改完不敢上线?OpenSpec 规约驱动开发实战
前端·代码规范·前端工程化
AiMan2 小时前
腾讯ima还是不可以导出左侧所有对话,只能单条导出,方法不对吗
前端
去伪存真2 小时前
并发量一高就装死?Agent 全链路“防猝死”手册
前端·agent
Moment2 小时前
AI 编程时代,聊聊我的 Mac mini 双屏桌面
前端·后端
AiMan2 小时前
先确认能不能一次把Microsofat Copilot所有内容打包一个文件导出
前端
总要学点什么2 小时前
第97篇:三维数据加载-城市建筑白模自定义着色器——让一条光带沿高度扫上去,快慢却由帧率说了算
前端·gis·webgl·cesium·着色器·空间分析·白模
上海懒图科技3 小时前
工厂厂区电子地图定位导航:厂区人车精准定位,安全合规双保障
前端·arcgis·vue