事件修饰符

简介: 事件修饰符

事件修饰符

在处理事件时调用 event.preventDefault()event.stopPropagation() 是很常见的。尽管我们可以直接在方法内调用,但如果方法能更专注于数据逻辑而不用去处理 DOM 事件的细节会更好。

为解决这一问题,Vue 为 v-on 提供了事件修饰符。修饰符是用 . 表示的指令后缀,包含以下这些:

  • .stop
  • .prevent
  • .self
  • .capture
  • .once
  • .passive
<!-- 单击事件将停止传递 -->
<a @click.stop="doThis"></a>
<!-- 提交事件将不再重新加载页面 -->
<form @submit.prevent="onSubmit"></form>
<!-- 修饰语可以使用链式书写 -->
<a @click.stop.prevent="doThat"></a>
<!-- 也可以只有修饰符 -->
<form @submit.prevent></form>
<!-- 仅当 event.target 是元素本身时才会触发事件处理器 -->
<!-- 例如:事件处理器不来自子元素 -->
<div @click.self="doThat">...</div>
<!-- 添加事件监听器时,使用 `capture` 捕获模式 -->
<!-- 例如:指向内部元素的事件,在被内部元素处理前,先被外部处理 -->
<div @click.capture="doThis">...</div>
<!-- 点击事件最多被触发一次 -->
<a @click.once="doThis"></a>
<!-- 滚动事件的默认行为 (scrolling) 将立即发生而非等待 `onScroll` 完成 -->
<!-- 以防其中包含 `event.preventDefault()` -->
<div @scroll.passive="onScroll">...</div>
相关文章
|
11天前
|
JavaScript 前端开发
addEventListener()方法中的参数,以及作用
addEventListener()方法中的参数,以及作用
19 1
|
9月前
|
JavaScript
Vue中的事件修饰符和按键事件
事件修饰符 prevent 阻止默认事件(常用) stop 阻止事件冒泡 once 事件只触发一次 capture 使用事件的捕获模式 self 只有 event.target 是当前操作的元素才触发事件 passive 事件的默认行为立即执行,无需等待事件回调执行完毕
49 0
|
2月前
|
设计模式 安全 Java
JAVAfinal修饰符
JAVAfinal修饰符
15 0
|
2月前
|
编译器 C++
C++修饰符
C++修饰符
10 0
|
2月前
|
C# 开发者 索引
C#修饰符
C#修饰符
12 0
|
3月前
|
C++
C++ 修饰符类型
C++ 修饰符类型
|
9月前
|
JavaScript
Vue2事件及事件修饰符
从基础到实战,我们一环都不要少!
30 0
|
10月前
|
前端开发 C语言
关于修饰符“#”
关于修饰符“#”
43 0
v-on的参数问题、修饰符、使用
v-on的参数问题、修饰符、使用
69 0
|
C++
类的修饰符
类的修饰符
58 0