Vue 事件处理
我们可以使用 v-on 指令(通常简写为 @ 符号)来监听 DOM 事件,并在触发时运行一些 JavaScript 代码。这使得我们可以创建交互式的用户界面。
监听事件
用法为 v-on:click="methodName" 或使用快捷方式 @click="methodName"。
内联事件处理器
除了直接绑定到一个方法,你也可以在内联处理器中执行简单的语句:
在方法中传递参数
在处理事件时,通常需要向方法传递参数。
访问事件参数
有时,我们需要访问原始的 DOM 事件对象。你可以使用特殊的 $event 变量将它传入方法:
事件修饰符 (Event Modifiers)
在处理事件时,我们经常需要调用 event.preventDefault() 或 event.stopPropagation()。为了解决这个问题,Vue 为 v-on 提供了事件修饰符。修饰符是以点开头的指令后缀。
.stop: 调用event.stopPropagation()。.prevent: 调用event.preventDefault()。.capture: 添加事件侦听器时使用 capture 模式。.self: 只当事件是从侦听器绑定的元素本身触发时才触发回调。.once: 点击事件将只会触发一次。.passive: 告诉浏览器你不想阻止事件的默认行为。
按键修饰符 (Key Modifiers)
在监听键盘事件时,我们经常需要检查特定的按键。Vue 允许为 v-on 在监听键盘事件时添加按键修饰符:
Vue 为最常用的按键提供了别名:
.enter.tab.delete(捕获“删除”和“退格”键).esc.space.up.down.left.right
你还可以直接使用任何有效的按键名称作为修饰符,例如 @keyup.page-down。