pwindy  
在完成任务的同时,还需要不断“复盘”,不论你多么的忙,都需要留下时间思考,可以思考哪些地方做的好,哪些地方我们可以改进,应该如何改进,注重总结才是王道

1.问题

[Violation] Added non-passive event listener to a scroll-blocking <某些> 事件. Consider marking event handler as 'passive' to make the page more responsive. See <URL>
译: [违规]向滚动阻止添加了非被动事件侦听器<某些> 事件. 请考虑将事件处理程序标记为“被动”,以提高页面的响应能力。请参阅<URL>

or:

[Violation] Added non-passive event listener to a scroll-blocking ‘mousewheel’ event. Consider marking event handler as ‘passive’ to make the page more responsive.

2.问题原因

Chrome51 版本以后,chrome 增加了新的事件捕获机制-Passive Event Listeners

  • Passive Event Listeners

就是告诉前页面内的事件监听器内部是否会调用preventDefault函数来阻止事件的默认行为,以便浏览器根据这个信息更好地做出决策来优化页面性能。当属性passive的值为true的时候,代表该监听器内部不会调用preventDefault函数来阻止默认滑动行为,Chrome浏览器称这类型的监听器为被动(passive)监听器。目前Chrome主要利用该特性来优化页面的滑动性能,所以Passive Event Listeners特性当前仅支持mousewheel/touch相关事件。

  • chrome官方文献:

《Use passive listeners to improve scrolling performance》(译: 使用被动监听器优化滚动体验)

3.解决方案

1.安装default-passive-events

 2.在src目录下的main.js中引入

3.重启项目即可

 

 

参考链接---【VUE】[Violation] Added non-passive event listener to a scroll-blocking...-CSDN博客

 

posted on 2024-09-26 15:47  pwindy  阅读(380)  评论(0编辑  收藏  举报