谷歌浏览器关于Added non-passive event listener to a scroll-blocking...的错误处理

一、场景

在开发项目时,当用到滚动事件scroll、滚轮事件wheel或者移动端touchstart/touchmove/touchend等事件时,谷歌浏览器可能会报以下警告

谷歌浏览器关于Added non-passive event listener to a scroll-blocking...的错误处理_第1张图片

二、解决方案

  1. 新建ployfill.js文件
//去除谷歌浏览器的scroll、wheel等事件警告
(function () {
    if (typeof EventTarget !== "undefined") {
      let func = EventTarget.prototype.addEventListener;
      EventTarget.prototype.addEventListener = function (type, fn, capture) {
        this.func = func;
        if (typeof capture !== "boolean") {
          capture = capture || {};
          capture.passive = false;
        }
        this.func(type, fn, capture);
      };
    }
  }());
  1. main.js引入该文件(因为ployfill.js中的解决思路是调整事件对象addEventListener的原型,所以一定要在项目初始化之前,最好在项目最开头引入ployfill.js
import "@/common/polyfill"    // 注意文件路径

你可能感兴趣的:(vue,javascript,前端)