前言

用element-plus搞项目的时候一直报下面这个警告, 主要是在用<el-table></el-table>的地方
想要知道关于警告详情的,可以参考博文下发的参考链接,我就不多赘述了

[Violation] Added non-passive event listener to a scroll-blocking ‘mousewheel’ event. Consider marking event handler as ‘passive’ to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952

解决方法

方法一(安装default-passive-events)

先终端运行以下命令

npm install default-passive-events --save

再在main.js引入

import ‘default-passive-events’

这是网上的通用做法,但我没生效:(

方法二(修改element-plus源代码)

"element-plus": "1.0.2-beta.71"
先打开 node_modules/element-plus/es/directives/index.js文件
Ctrl+F搜索(const mousewheel)附近
const isFirefox下添加

const canPassive = typeof navigator !== "undefined" && ~~navigator.userAgent.toLowerCase().match(/chrome\/(\d.*?)\./)[1] > 51;

if (isFirefox)下新增条件分支

else if (canPassive) {
      element.addEventListener("mousewheel", fn, {passive: true})
    } 

代码修改示例图

参考链接

参考链接1: 让页面滑动流畅得飞起的新特性:Passive Event Listeners.
参考链接2: chrome passive event listener 报错.

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐