当前位置: 首页 > news >正文

【Vue】修饰符

个人博客:haichenyi.com。感谢关注

一. 目录

  • 一–目录
  • 二–修饰符的作用​
  • 三–常见修饰符分类及示例
  • 四–Vue 3 的变化​
  • 五–总结​​

二. 修饰符的作用

  1. ​简化代码:​ 例如,用 .prevent 代替手动调用 event.preventDefault()。
  2. 约束行为​: 例如,限制事件只在特定按键(.enter)或鼠标按键(.right)下触发。
  3. 优化交互​: 例如,表单输入时自动过滤空格(.trim)或转为数字(.number)。

三. 常见修饰符分类及示例

  1. 事件修饰符(v-on 或 @)
    • .stop: 阻止事件冒泡
    <button @click.stop="handleClick">点击不会冒泡</button>
    
    • .prevent: 阻止默认行为(如表单提交)
    <form @submit.prevent="onSubmit">阻止表单默认提交</form>
    
    • .capture: 事件在捕获阶段触发(而非冒泡阶段)
    <div @click.capture="handleCapture">捕获阶段触发</div>
    
    • .self: 仅当事件在元素自身(而非子元素)触发时生效
    <div @click.self="handleSelf">子元素点击不会触发</div>
    
    • .once: 事件只触发一次
    <button @click.once="handleOnce">只能点击一次</button>
    
  2. 表单修饰符(v-model)
    • .lazy: 将 input 事件转为 change 事件(输入完成才更新)
    <input v-model.lazy="message"> <!-- 输入框失焦后更新数据 -->
    
    • .number: 将输入值转为数字类型
    <input v-model.number="age" type="number"> <!-- 输入 "123" 转为 123 -->
    
    • .trim: 自动去除首尾空格
    <input v-model.trim="username"> <!-- 输入 "  vue  " 转为 "vue" -->
    
  3. 键盘修饰符(@keyup、@keydown)
    • 按键别名
    //监听特定按键:
    <input @keyup.enter="submit"> <!-- 按下回车键触发 -->
    <input @keyup.esc="cancel">  <!-- 按下 ESC 键触发 -->
    
    • 系统修饰键
    //组合按键触发:
    <input @keyup.ctrl.c="copy"> <!-- 按下 Ctrl + C 触发 -->
    
  4. 鼠标修饰符(@click 等)
    • .left​​、​​.right​​、​​.middle
    //限制鼠标按键触发
    <div @click.right="showMenu">右键点击显示菜单</div>
    

四. Vue 3 的变化

  1. 移除 .native: 在 Vue 3 中,组件事件需通过 emits 显式声明,不再需要 .native。

五. 总结

分类修饰符示例作用
事件.stop .prevent控制事件传播和默认行为
表单.lazy .trim优化输入更新和格式过滤
键盘.enter .ctrl监听特定按键或组合键
鼠标.right限制鼠标按键触发
v-bind.prop .camel控制属性绑定方式

相关文章:

  • 前端笔记-AJAX
  • 【自然语言处理与大模型】模型压缩技术之蒸馏
  • 秦智杂志秦智杂志社秦智编辑部2025年第3期目录
  • 合同管理Contract Management
  • CH585单片机的LCD外设怎么驱动段式LCD
  • leetcode149.直线上最多的点数
  • YOLOv5改进CBAM【保姆级教程】
  • OpenCV 图形API(45)颜色空间转换-----将图像从 BGR 色彩空间转换为 YUV 色彩空间函数BGR2YUV()
  • 【教程】Digispark实现串口通信
  • 深入解析Vue3响应式系统:从Proxy实现到依赖收集的核心原理
  • [免费]SpringBoot+Vue博物馆(预约)管理系统【论文+源码+SQL脚本】
  • leetcode 516. Longest Palindromic Subsequence
  • Qt 概述
  • 【Linux】轻量级命令解释器minishell
  • 在线查看网站免费工具 wps, dps, et, ett, wpt 文件格式
  • Java 性能优化:从硬件到软件的全方位思考
  • JavaScript性能优化实战(1):性能优化基础与性能分析工具
  • KRaft面试思路引导
  • 【JavaEE】计算机的工作原理
  • [SpringMVC]请求响应参数传递
  • 2025年度“沪惠保”今日开售:保费维持129元/人,进一步扩增国内外特药种类
  • AI换脸侵权案入选最高法典型案例:明晰人工智能使用边界
  • 女子拿蘸料时触电受伤,海底捞回应
  • 北京理工大学解除宫某聘用关系,该教师被指涉嫌骚扰猥亵学生
  • 张九思任电子科大副教授,曾以学生身份入选爱思唯尔全球前2%顶尖科学家
  • 2025上海半马鸣枪,多个“首次”冲击一城双白金