博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue事件修饰符,详解
阅读量:2053 次
发布时间:2019-04-28

本文共 995 字,大约阅读时间需要 3 分钟。

vue官网上指出:

在事件处理程序中调event.preventDefault()event.stopPropagation()是非常常见的需求。尽管我们可以在方法中轻松实现这点,但更好的方式是:方法只有纯粹的数据逻辑,而不是去处理 DOM 事件细节。
为了解决这个问题,Vue.js 为 v-on 提供了事件修饰符。修饰符是由点开头的指令后缀来表示的。
event.preventdefault():阻止默认事件发生,例如:a标签默认会刷新,表单的提交。
event.stopPropagation()终止事件在传播过程的捕获、目标处理或起泡阶段进一步传播。调用该方法后,该节点上处理该事件的处理程序将被调用,事件不再被分派到其他节点。即不会再产生捕获和冒泡事件。

vue事件修饰符:

(1).stop // 阻止事件继续传播 即阻止它的捕获和冒泡过程

实例:如下点击内部点击,阻止了冒泡过程,即只执行tz这个方法,如果不加.stop,讲先执行方法,后执行gett方法。即通过了冒泡这个过程。

外部点击
内部点击

**(2).prevent **

//阻止默认事件发生 即event.preventdefault():

实例: 阻止了a标签的默认刷新

(3).capture

// 添加事件监听器时使用事件捕获模式,即在捕获模式下触发 实例:在点击最里层的点击6时,gett方法先执行,因为gett方法在捕获模式执行的,先与冒泡事件。下列执行顺序 geet->set->tz ,因为后俩个还是冒泡模式下触发的事件。

外部点击5
内部点击5
点击6

(4).self //当前元素自身时触发处理函数时才会触发函数,

原理:是根据event.target确定是否当前元素本身,来决定是否触发的事件/函数 实例:如果点击内部点击2,冒泡不会执行gett方法,因为event.target指的是内部点击2的dom元素,不是外部点击1的,所以不会触发自己的点击事件

外部点击1
内部点击2

(5).once //只触发一次

实例:

once

原文连接:

转载地址:http://akylf.baihongyu.com/

你可能感兴趣的文章
使用 buildx 构建多平台 Docker 镜像
查看>>
Kubelet 中的 “PLEG is not healthy” 到底是个什么鬼?
查看>>
不懂OpenShift,不足以谈云计算!
查看>>
别让自己“墙”了自己
查看>>
让你的网站用上炫酷的中文字体
查看>>
使用 font-spider 对 webfont 网页字体进行压缩
查看>>
云原生服务网格 Istio 1.4 部署指南
查看>>
让 Linux 防火墙新秀 nftables 为你的 VPS 保驾护航
查看>>
Istio 1.4 部署指南
查看>>
贫苦家庭用户的 Envoy xDS 控制平面
查看>>
Kubernetes Pod 网络精髓:pause 容器详解
查看>>
Docker 技术鼻祖 Linux Namespace 入门系列:Namespace API
查看>>
使用 ebpf 深入分析容器网络 dup 包问题
查看>>
Kubelet 中的 “PLEG is not healthy” 到底是个什么鬼?
查看>>
超详细的网络抓包神器 Tcpdump 使用指南
查看>>
从 Kubernetes 资源控制到开放应用模型,控制器的进化之旅
查看>>
从此以后运维与开发过上了没羞没臊的性福生活
查看>>
教你如何优雅地魔改 Grafana 主题,太实用了!
查看>>
让我们来看看回到单体的 Istio 到底该怎么部署
查看>>
超详细的网络抓包神器 tcpdump 使用指南
查看>>