vue常用修饰符有哪些,有什么应用场景

本文介绍了Vue中常用的修饰符,包括表单修饰符、事件修饰符、鼠标按键修饰符、键值修饰符和v-bind修饰符,并详细阐述了它们的作用和应用场景,帮助开发者更好地理解和运用Vue的事件处理机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、修饰符是什么

在程序世界里,修饰符是用于限定类型以及类型成员的声明的一种符号

Vue中,修饰符处理了许多DOM事件的细节,让我们不再需要花大量的时间去处理这些烦恼的事情,而能有更多的精力专注于程序的逻辑处理

vue中修饰符分为以下五种:

  • 表单修饰符

  • 事件修饰符

  • 鼠标按键修饰符

  • 键值修饰符

  • v-bind修饰符

二、修饰符的作用

表单修饰符

在我们填写表单的时候用得最多的是input标签,指令用得最多的是v-model

关于表单的修饰符有如下:

  • lazy

  • trim

  • number

lazy

在我们填完信息,光标离开标签的时候,才会将值赋予给value,也就是在change事件之后再进行信息同步

<input type="text" v-model.lazy="value">
<p>{
  
  {value}}</p>

trim

自动过滤用户输入的

<think>我们正在讨论Vue的事件修饰符。事件修饰符Vue为v-on指令提供的特殊后缀,用于处理DOM事件细节。 常用的事件修饰符包括: .stop - 调用 event.stopPropagation(),阻止事件冒泡 .prevent - 调用 event.preventDefault(),阻止默认行为 .capture - 添加事件侦听器时使用 capture 模式(即事件捕获阶段处理) .self - 只当事件是从侦听器绑定的元素本身触发时才触发回调(即事件源是自身才触发) .once - 只触发一次回调 .passive - 以 { passive: true } 模式添加侦听器,提升移动端性能(尤其滚动性能) 此外,还有按键修饰符(如 .enter, .tab, .delete, .esc, .space, .up, .down, .left, .right)和系统修饰键(如 .ctrl, .alt, .shift, .meta)等。 下面我们将详细说明这些事件修饰符的用法和场景。</think>### Vue 常用事件修饰符详解 事件修饰符Vue 为 `v-on` 指令提供的特殊后缀,用于简化常见 DOM 事件处理逻辑。以下是核心修饰符及其应用场景: --- #### **基础事件修饰符** 1. **`.stop`** - 阻止事件冒泡 ```html <button @click.stop="handleClick">点击不会向上冒泡</button> ``` 2. **`.prevent`** - 阻止默认行为 ```html <form @submit.prevent="onSubmit">阻止表单默认提交</form> ``` 3. **`.capture`** - 使用捕获模式(从外向内触发) ```html <div @click.capture="outer">外层先触发</div> ``` 4. **`.self`** - 仅当事件源是元素自身时触发(忽略子元素冒泡) ```html <div @click.self="onlySelf">子元素点击不会触发</div> ``` 5. **`.once`** - 事件只触发一次 ```html <button @click.once="oneTime">仅生效一次</button> ``` 6. **`.passive`** - 提升滚动性能(不阻塞主线程) ```html <div @scroll.passive="onScroll">移动端优化</div> ``` --- #### **按键修饰符** 7. **系统按键** ```html <!-- 组合键 --> <input @keyup.ctrl.enter="submit"> <!-- 精确按键 --> <input @keyup.exact.esc="close"> ``` 8. **常用按键别名** | 修饰符 | 对应按键 | |--------------|----------------------| | `.enter` | Enter 回车键 | | `.tab` | Tab 键 | | `.delete` | Delete / Backspace | | `.esc` | Esc 键 | | `.space` | 空格键 | | `.up`/`.down`| 上下方向键 | --- #### **鼠标修饰符** 9. **鼠标按键限定** ```html <div @click.middle="middleClick">中键点击</div> <div @click.right.prevent>禁用右键菜单</div> <!-- 其他:.left, .right, .middle --> ``` --- ### 修饰符链式调用 可串联使用多个修饰符: ```html <!-- 阻止冒泡 + 阻止默认行为 + 只触发一次 --> <a @click.stop.prevent.once="doSomething">链接</a> ``` --- ### 性能与场景对比 | 修饰符 | 典型场景 | 注意事项 | |--------------|--------------------------|--------------------------| | `.passive` | 移动端滚动事件 | 不能与 `.prevent` 共用 | | `.exact` | 精确控制系统修饰键组合 | 需 Vue 2.5+ | | `.once` | 一次性操作(如表单提交) | 解绑后不影响手动触发 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浏览器翻译官~

你的励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值