【问题标题】:"ResizeObserver - loop limit exceeded" | API is never used“ResizeObserver - 超出循环限制” |从未使用过 API
【发布时间】:2020-08-30 03:10:56
【问题描述】:

我正在运行一个混合的 PhoneGap 应用程序(几年来,运行 Cordova Android 6.1.2,最近是 9.0);多年来,我们的 #1 javascript 错误显着

ResizeObserver loop limit exceeded

然而,与在 Google 上发现的许多其他关于此错误的报告相比,我的问题的主要区别在于,在任何地方都使用了 0 个 ResizeObserver 实例我的代码。搜索我的整台电脑,anywhere 中唯一出现的 ResizeObserver 实例是一个随机的 Steam 文件。在运行时查看我的应用程序,设置 window.ResizeObserver = undefined 不会破坏/执行任何操作,document.resizeObservers(根据 W3C 文档)不会返回任何内容。

我看过这篇文章,这似乎是这个错误的典型:ResizeObserver - loop limit exceeded。 “此错误意味着 ResizeObserver 无法在单个动画帧内提供所有观察结果。这是良性的(您的站点不会中断)”的答案。如果我实际使用 ResizeObserver,对我来说就足够了。由于我没有使用它,我担心出现此错误表明出现更大的问题。

很遗憾,我们用户的 Chrome 版本/区域设置/时区/Android 版本/etc/etc 没有可辨别的模式。

我对这个 API 进行了广泛研究,但没有发现任何迹象表明我的问题;为什么会运行某种幻影 ResizeObserver 和/或为什么该错误会出现在不使用该 API 的应用程序中。

非常感谢这里的任何帮助(即使只是一个模糊的方向)。非常感谢!

【问题讨论】:

    标签: javascript google-chrome


    【解决方案1】:

    https://bugs.chromium.org/p/chromium/issues/detail?id=809574

    甚至浏览器的 Shadow DOM 也可能正在使用此 API,并导致此错误发生。
    您仍然可以放心地忽略它。

    【讨论】:

    • 就是这样! Chrome 会自动将观察者附加到视频标签。供人们将来参考:ResizeObserver 的出现似乎与对 CPU/GPU 征税有关。与 Kaiido 一致,没有实际问题,可以忽略,但如果你真的想从你的表现中挤出最后的百分比,这可能是一个值得关注的信号。
    • 请注意,Chromium 问题底部附近的评论也提供了该问题的解决方法。 (观察者仍然被附加,但视频控件元素的宽度使用css锁定,避免循环限制超出错误/通知)
    猜你喜欢
    • 1970-01-01
    • 2021-04-20
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 2013-03-11
    • 1970-01-01
    相关资源
    最近更新 更多