ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

vue: 报错: vue ResizeObserver loop completed with undelivered notifications.

vue: 报错: vue ResizeObserver loop completed with undelivered notifications.

一,报错信息:

vue ResizeObserver loop completed with undelivered notifications.

如图:我没有专门截图,转一张别人发的

 image

二,原因

ResizeObserver 警告解释
这条警告源于 ResizeObserver 的实现机制。它表示监听了 DOM 尺寸变化后,在当前帧处理通知时,可能造成无限循环或未能及时处理完所有变化。

常见触发场景包括:

使用了 <a-table> 且设置了 scroll 属性;

页面频繁触发 resize;

某些组件内部使用了 ResizeObserver(如图表、布局组件); 

三,解决:

App.vue/main.js中加入以下这段代码即可解决:
其中:app.vue写在script里面  
      main.js写在app挂载完之后

代码:

// app.vue写在script里面  main.js写在app挂载完之后
const debounce = (fn, delay) => {let timerreturn (...args) => {if (timer) {clearTimeout(timer)}timer = setTimeout(() => {fn(...args)}, delay)}
}
const _ResizeObserver = window.ResizeObserver;
window.ResizeObserver = class ResizeObserver extends _ResizeObserver{constructor(callback) {callback = debounce(callback, 200);super(callback);}
}

 

返回列表