输入框输入搜索后,出现这个错误

来源:5-30 方案落地:数据源重处理,生成 searchPool

音乐流星

2024-10-16

ResizeObserver loop completed with undelivered notifications.
at handleError (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:252:58)
at eval (webpack-internal:///./node_modules/webpack-dev-server/client/overlay.js:271:7)

写回答

1回答

Sunday

2024-10-18

你好

这是因为:选项弹出层依赖监听(window.ResizeObserver)计算尺寸时出了问题。

解决方案共有三种:

  1. 通过以下代码进行处理(节流减少重绘的速度,但是很多情况下效果不明显
    保证el-select所在单元格尺寸不发生变化即可。

可通过如下代码进行处理(直接在 src/plugins/element.js 中引入如下代码)

const _ = window.ResizeObserver
window.ResizeObserver = class ResizeObserver extends _ {
  constructor(callback) {
    callback = debounce(callback, 20)
    super(callback)
  }
}

const debounce = (callback, delay) => {
  let tid
  return function () {
    const ctx = self
    tid && clearTimeout(tid)
    tid = setTimeout(() => {
      callback.apply(ctx, arguments)
    }, delay)
  }
}
  1. 推荐:让报错在控制台展示(因为这个报错并不影响功能),可以直接在 vue.config.js 文件中增加如下配置:

  2. // vue.config.js
    module.exports = {
      devServer: {
         client: {
          overlay: false,
        },
      },
    };
  3. 指定固定宽度


0
0

基于Vue3新标准,打造后台综合解决方案

基于Vue3重写Vue-element-admin,打造后台前端综合解决方案

1941 学习 · 1687 问题

查看课程