企微清除缓存或者发版后,侧边栏会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()
}
}
这个是否缓存是你们自己的服务器设置的吧
遇到同样问题,请问楼主解决了么~