前端异常监控

iframe 中异常的捕获

iframe 中发生异常,外界的 onerror 是不会触发的。但如果 iframe 地址同域,那么我们就可以设置 iframe 的全局 onerror 进行监听

ts
// 需要保证在 iframe 加载完成后进行
document.getElementById('myIframe').contentWindow.onerror = function () {
  alert('error!!')
  return false
}

非同域情况下,如果 ifame 内的内容不来自第三方,也就是你自己可以控制,那么可以通过与 iframe 内进行通信的方式,将异常信息抛出来

非同域且内容不受自己控制的情况下,除了在控制台查看错误详细信息,真的没其他办法可以捕获了。