【发布时间】:2022-06-17 19:01:03
【问题描述】:
我已在 react 18.2.0 中迁移了我的代码。我正在使用
- 使用 suspense 和 lazy 进行代码拆分。
- 单页应用
完美加载拆分块,快乐流程正在运行。下面是代码
let LoginPageM = React.lazy(() => import('./LoginPageM' /* webpackChunkName: 'LoginPageM' */));
const Index = ({ isSSR, ...props }) => {
return (
<React.Suspense fallback={<LoaderUI />}>
<LoginPageM isSSR={isSSR} {...props} />
</React.Suspense>
);
};
问题: 但是,如果由于网络缓慢或用户离线而导致块加载失败怎么办。
点击重试按钮,需要重新下载块
我重试下载块并调用索引函数。我以为 react 会重试下载块,react-loadable 也发生了同样的事情,但是 LoginPageM 存储了失败的惰性组件。又是在说LoginPageM加载失败而不是重新加载了。
【问题讨论】:
标签: lazy-loading code-splitting react-suspense react-lazy-load react-18