--- title: 'react路由懒加,项目经常上线导致没有刷新的用户出现js文件加载失败: ChunkLoadError: Loading chunk 42 failed.' date: 2021-08-04 11:06:00 --- 解决方案: 使用错误边界: ```javascript import React, { Component } from 'react' //错误边界 //https://zh-hans.reactjs.org/docs/error-boundaries.html#gatsby-focus-wrapper export default class ErrorBoundary extends Component { constructor(props) { super(props); this.state = { error: null, errorInfo: null }; } componentDidCatch(error, errorInfo) { // Catch errors in any components below and re-render with error message this.setState({ error: error, errorInfo: errorInfo }) // You can also log error messages to an error reporting service here } render() { if (this.state.errorInfo) { // Error path return ( <div className="m-error-wrap"> <div className="m-error-img-wrap"> <div className="m-error-img"></div> </div> <div className="m-error-text">网页出错了,请尝试刷新一下~</div> <details style={{ whiteSpace: 'pre-wrap' }}> {this.state.error && this.state.error.toString()} <br /> {this.state.errorInfo.componentStack} </details> </div> ); } // Normally, just render children return this.props.children; } } ``` ![](https://img-blog.csdnimg.cn/20210804110517412.png?x-oss-processimage/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3h1dG9uZ2Jhbw,size_16,color_FFFFFF,t_70)