Vue事件修饰符

Vue事件修饰符(stop, prevent, self, once, capture)

  • stop 是阻止冒泡行为,不让当前元素的事件继续往外触发,如阻止点击 div 内部事件,触发div事件
    <div @click="clickDiv">
        <button @click.stop="clickButton">按钮</button>
         <!-- 使用 .stop 可以阻止事件的冒泡,这样在点击button的时候不会触发外部的div点击事件 -->
    </div>
  • prevent 是阻止事件本身行为,如阻止超链接的点击跳转, form 表单的点击提交
    <a href="http://www.baidu.com" @click.prevent>百度</a>
    <!-- 使用 .prevent 阻止默认事件,这里阻止了超链接的跳转 -->
  • self 是只有是自己触发的自己才会执行,如果接受到内部的冒泡事件传递信号触发,会忽略掉这个信号
    <div @click="oDiv">
        <div @click.self="clickDiv">
            <!-- .self是将事件设置为只有自己本身触发的时候才触发 -->
            <!-- 如果是冒泡传递上来的事件不触发自身事件 -->
            <!-- 这里点击button会触发 clickButton 和 oDiv ,而不会触发 clickDiv -->
            <button @click="clickButton">按钮</button>
        </div>
    </div>   
  • capture 是改变 js 默认的事件机制(冒泡), capture 功能是将冒泡改为捕获模式
    <div @click.capture="clickDiv">
        <!-- 使用 .capture 让js的监听机制从冒泡改为捕获 -->
        <!-- 冒泡是从里往外触发,捕获是从外往里触发 -->
        <!-- 这里会先弹出div的弹窗事件,然后触发button弹窗 -->
        <button @click="clickButton">按钮</button>
    </div>
  • once 是将事件设置为只执行一次,如 .click.prevent.once 代表只阻止事件的默认行为一次,当第二次触发的时候事件本身的行为会执行
    <button @click.once="clickButton">按钮</button>
    <!-- .once 设置事件只执行一次 -->
    <!-- 这里第一次点击会执行clickButton 方法,之后都不行 -->
stop 与 self 的区别

self 只是阻止自身不执行冒泡触发,不会阻止冒泡继续向外部触发, stop 是从自身开始不向外部发射冒泡信号

转载于:https://www.cnblogs.com/sakura666/p/11265613.html

本项目属于机器学习的简单部分,基于为了快速理解机器学习而搭建的人工智能速成项目,大家可以根据其中的项目时间进行相关的学习.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值