原因:如果我们项目中使用了路由或者组件懒加载,当我们网站上线后服务器上前端资源被替换,如果用户在我们上线期间正在使用我们的网站,上线后在加载没有加载过或者缓存过的组件数据时就会发生错误。
Loading chunk * faild.
解决方法:
使用路由的onError监听事件来获取组件加载失败的异常,然后刷新当前页面;
router.onError(error) => {
let pattern = /Loading chunk (.*) failed\./;
if (pattern.test(error.message)) {
location.reload(true);
}
}