Vue打包后放到服务器出现Loading chunk * failed 错误

解决偶现问题 Loading chunk ** failed

原因: 路由异步加载组件报错,错误来源 webpack 进行 code spilt 之后某些 bundle 文件 lazy loading 失败

解决方案:

  • 错误在一个路由守卫函数中被同步抛出
  • 错误在一个路由守卫函数中通过调用 next(err) 的方式异步捕获并处理
  • 渲染一个路由的过程中,需要尝试解析一个异步组件时发生错误
  • 将异步组件改为同步组件
router.onError(error => {
  const pattern = /Loading chunk (\w)+ failed/g
  const isError = error.message.match(pattern)
  const targetPath = router.history.pending.fullPath
  if (isError) {
    router.replace(targetPath)
  }
})

转载至:https://www.jianshu.com/p/82bcec27602c

你可能感兴趣的:(Vue打包后放到服务器出现Loading chunk * failed 错误)