reactjs - 使用 React.lazy() 时开发构建崩溃
问题描述
我正在使用 react Lazy 和 Suspense 来加载组件,但是如果我尝试使用npm run build构建应用程序,我会收到一条错误消息:错误:未捕获的错误:缩小的反应错误 #294;,并且如果我评论延迟加载构建会成功。代码:
import { Suspense, lazy } from 'react';
const Component= lazy(() => import('./../location'));
const Homepage=()=>{
return (
<>
<Suspense fallback={<div>Loading...</div>}>
<Component/>
</Suspense>
</>
)
}
export default Homepage;
解决方案
当我们使用 ssr(服务器端渲染)或 ReactDOMServer 时,这个错误基本上在路径中命中,
由于 ReactDOMServer 尚不支持 React.lazy 和 Suspense,您需要使用动态导入并删除 Suspense 和 React.lazy 以避免此错误。
推荐阅读
- grep - 如何使用 GREP 过滤掉下面没有数据的行?
- python - 没有 if 子句的条件?
- java - 需要结合使用 JAXB STAX 的没有结束标记的 XML 根元素
- flutter - flutter redux setState 会调用 oninit 函数并再次刷新页面 #189
- powershell - Powershell:从目录中获取文件和文件夹的计数
- javascript - 如何通过变量名寻址 javascript 类中的静态成员
- memory-management - ESP32 将字符串写入 EEPROM
- php - 我想在 textarea 自定义字段中的 wordpress 中插入链接列表,每个链接都在新行上
- javascript - 如果占位符的属性值包含斜杠和空格,如何使用 querySelectorAll 按属性值进行选择
- amazon-cognito - 使用 amplify auth update 将 Cognito 用户池组添加到现有 Cognito 资源?