收藏
回答

企微侧边栏h5中为什么捕获不到报错异常?

企微清除缓存或者发版后,侧边栏会chunk.js加载失败。推测的原因是企微内置浏览器觉得服务器资源没有更新,所以返回304读取本地缓存,但是本地的缓存已经被清除,所以chunk.js加载失败了。


尝试用js错误捕获机制,捕获到错误后重新加载页面,但是企微浏览器对于js的window.onerror和react的componentDidCatch都触发不了,所以这个问题暂时没法解决,请问有别的错误捕获,可以在企微侧边栏中应用么。

componentDidMount() {
  StorageManager.checkStorageSync()
  window.onerror = (e) => { // 不生效
    alert(`app DidMount${JSON.stringify(e)}`)
    console.warn('window.onerror', e)
  }
  this.loadPage()
}

componentDidCatch(error, info) { // 不生效
  alert(`app DidCatch${JSON.stringify(error)}`)
  console.log('Error::::', error)
  console.log('info', info)
  if (String(error).includes('Loading chunk')) {
    window.location.reload()
  }
}
回答关注问题邀请回答
收藏

2 个回答

  • A.G.A.I.N
    A.G.A.I.N
    2022-05-17

    这个是否缓存是你们自己的服务器设置的吧

    2022-05-17
    有用 2
    回复
  • 以堪
    以堪
    2022-05-17

    遇到同样问题,请问楼主解决了么~

    2022-05-17
    有用
    回复
登录 后发表内容