《跟热饭一起学习vue吧》Part.18 事件修饰符

164 阅读2分钟

事件修饰符

上节课我们学习了事件处理器:v-on:

本节课我们学习的就是在这基础上,增加一些修饰的技术。具体写法就是:

v-on:属性名字.修饰符 = 

.stop 阻止冒泡

用click点击事件举例的写法如下:

v-on:click.stop = '函数名'

那么这是什么意思呢?什么叫冒泡呢?

我们往下看。

假如现在有这么一个写法:

图片

也就是说,外面和里面俩个div,都分别有各自的绑定事件。外面的弹出a,里面的弹出b。

这时候我们点击外面的字符串Say a,浏览器会弹出一个a,这没问题。

然后我们点击里面的字符串Say b,浏览器就会先弹出一个b,然后再弹出一个a !

这明显是有问题的,因为我们不想让a函数跟着b后面执行。但是没办法,这种嵌套元素,并且外里都有各自的绑定事件的情况很常见。

结果就是点击里面的,它会从里面开始执行,然后把外层的元素标签逐个执行一轮!

就像一个冒泡一样,从海底深处下开始冒泡,一直飘到水面。

那为了阻止这种情况产生,我们现在要学习的 修饰符就派上了用场:.stop()

.stop() 就是阻止冒泡的功能,也就是用了它,就不会产生上述的问题,到时候点哪就执行哪,不会连带着外层包裹的元素的事件都执行。

具体用法:图片

这种修饰符是不是很有用?而且它们还有很多。

.stop - 阻止冒泡

.prevent - 阻止默认事件

.capture - 阻止捕获

.self - 只监听触发该元素的事件

.once - 只触发一次

.left - 左键事件

.right - 右键事件

.middle - 中间滚轮事件

我们今后有时间会一个一个讲一遍,大家感兴趣的也可以自行百度学习。

好了本节课就到这里,怎么样,是不是感觉很简单???感觉简单的话,就立马关注下本公众号吧~ 进群学习请加v:qingwanjianhua

本文使用 文章同步助手 同步