Vue.js 为 v-on 提供了事件修饰符来处理 DOM 事件细节,如:event.preventDefault() 或 event.stopPropagation()。
.stop --> 阻止冒泡
.prevent --> 阻止默认行为
.capture --> 实现捕获触发事件的机制
.self --> 只有点击当前元素的时候,才会触发事件处理函数
.once -->只触发一次事件处理函数
.stop和.self 的区别
.self只阻止自身的冒泡行为触发 并不会真正的阻止冒泡行为(也就是说只管自己不管其他)
.stop阻止所有的冒泡行为(也就是不管是不是自己的 都不能冒泡)
Vue.js通过由点 (.) 表示的指令后缀来调用修饰符。
.stop
.prevent
.capture
.self
.once
阻止单击事件冒泡 -->
<a v-on:click.stop="doThis"></a>
提交事件不再重载页面 -->
<form v-on:submit.prevent="onSubmit"></form>
修饰符可以串联 -->
<a v-on:click.stop.prevent="doThat"></a>
只有修饰符 -->
<form v-on:submit.prevent></form>
添加事件侦听器时使用事件捕获模式 -->
<div v-on:click.capture="doThis">...</div>
只当事件在该元素本身(而不是子元素)触发时触发回调 -->
<div v-on:click.self="doThat">...</div>
click 事件只能点击一次,2.1.4版本新增 -->
<a v-on:click.once="doThis"></a>
网友评论