vue事件修饰符示例以及介绍

1vue中的事件修饰符

1.prevent 阻止默认事件

示例:

不加时,点击a标签后先执行方法,方法执行结束跳转链接

<a href="www.baidu.com" @click="showInfo">点我跳转</a>

1-4通用方法 

showInfo(){
    alert('你好')
}
//此时弹窗出你好,点击确定后跳转链接

加上后,点击a标签后执行showInfo方法后不跳转链接

<a ref="www.baidu.com" @click.precent="showInfo">点我跳转</a>

 2.stop 阻止事件冒泡

示例: 

此时点击里层div(我是大聪明)先执行里层方法后,再执行外层方法(我是二聪明),故有两个弹窗

知识点:

冒泡是从里层到外层

捕获是从外层到里层

<div @click="showInfo">
    我是二聪明
    <div @click="showInfo">我是大聪明<div>
<div>

 此时加上.stop执行完里层后不执行外层,故只有一个弹窗

<div @click.stop="showInfo">
    我是二聪明
    <div @click="showInfo">我是大聪明<div>
<div>

 3.once 事件只触发一次

示例:

此时点击div会弹窗,关闭弹窗再次点击也会触发弹窗 

<div @click="showInfo">我是大聪明<div>

 加上.once后点击第一次触发弹窗,关闭弹窗再次点击不会再触发弹窗

<div @click.once="showInfo">我是大聪明<div>

 4.captrue 使用事件的捕获模式

 示例:

此时点击里层div(我是大聪明)先执行里层方法后,再执行外层方法(我是二聪明),故有两个弹窗

<div @click="showInfo">
    我是二聪明
    <div @click="showInfo">我是大聪明<div>
<div>

 给父层加上.captrue后先执行外层方法(我是二聪明),再执行里层方法(我是大聪明)

<div @click.captrue="showInfo">
    我是二聪明
    <div @click="showInfo">我是大聪明<div>
<div>

5.self 只有event.target是当前操作的元素时才触发事件

示例:

 此时点击button通过冒泡会打印两次button元素

<div @click="showInfo">
    我是二聪明
    <button @click="showInfo">我是大聪明<button>
<div>
showInfo(event){
    console.log(event.target)
}
//此时弹窗出你好,点击确定后跳转链接

加上 .self后,如果触发了div的click,那么只有event.target是这个div时才会执行这个方法,此时点击button之打印一次button

<div @click.self="showInfo">
    我是二聪明
    <button @click="showInfo">我是大聪明<button>
<div>

 6.passive 事件的默认行为立即执行,无需等待事件回调执行完成。

 示例:

此时鼠标滑轮滚动时,先循环10000次后滚动条才会向下滚动。

<ul @wheel="demo">
//scroll是监听滚动条滚动  wheel是监听滚轮滚动
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>
demo(){
    for(let i=0; i < 10000; i++){
        console.log(i)
    }
    console.log('累坏了')
}

加上后滚动条和方法同步执行

<ul @wheel.passive="demo">
//scroll是监听滚动条滚动  wheel是监听滚轮滚动
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值