gpt4 book ai didi

javascript - window.onerror 被第 3 方库覆盖 - 如何跟踪它以重新安装我的处理程序?

转载 作者:行者123 更新时间:2023-11-29 10:29:53 25 4
gpt4 key购买 nike

在我们的网站上,我们希望使用 stacktracejs 库跟踪所有 JS 错误。安装非常简单,我们在 <head> 中执行此操作:

window.onerror = function(msg, file, line, col, error) {
// callback is called with an Array[StackFrame]
StackTrace.fromError(error).then(callback).catch(errback);
};

然后我们在页脚中包含 Hubspot 跟踪代码,如下所示:

<script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/hs.js"></script>

注意 asyncdefer - 在某个未知的时间点,Hubspot 的脚本接管(重新分配给它们的功能)window.onerror - 不考虑我的功能。据我所知,这是一个错误,并且在他们的网站上有报道:https://integrate.hubspot.com/t/tracking-code-overrides-window-onerror/1755

我的问题是 - 是否有可能以某种方式跟踪函数定义被覆盖?我知道我能做到settimeout()但我认为这是穷人的解决方案。如果您愿意,我正在寻找“自然”方式 - 订阅通知或类似的东西。

最佳答案

如果您希望没有人替换您的函数,您可以改用 addEventListener

window.addEventListener('error', sendError)

关于javascript - window.onerror 被第 3 方库覆盖 - 如何跟踪它以重新安装我的处理程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48668978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com