gpt4 book ai didi

javascript - React Suspense 延迟加载没有回退

转载 作者:行者123 更新时间:2023-12-04 11:57:09 35 4
gpt4 key购买 nike

我想延迟加载我的组件以减少我的初始包大小并使用 react 路由器使用代码拆分即时获取组件。
但是,当使用 React Suspense 时,它​​们会强制您使用后备进行加载。
这行不通:

const lazyLoadComponent = Component =>
props => (
<Suspense> // Missing fallback property
<Component {...props} />
</Suspense>
);
在我的情况下,我正在从服务器渲染 html,所以我不想使用微调器。
这会在我的屏幕上产生无用的闪烁!
IE。:
  • Html 加载
  • 占位符出现
  • 路由的页面组件被加载
  • 我有自己的微调器,可以从页面组件中加载提要

  • 在我的情况下,html 对应于被加载的 react 组件。
    是否有任何已知的黑客可以轻松解决此问题(除了为复制 html(!!)的任何路由创建加载程序,顺便说一下,这会使延迟加载无用)。
    我对“强制”我们添加一个加载器有点不满,我不理解强制执行的决定背后的逻辑。

    最佳答案

    尝试在 the docs 中使用代码拆分fallback props 只是一个 React 元素,可以设置为 null .

    const MyLazyComponent= React.lazy(() => import('./MyComponent'));

    <Suspense fallback={null}>
    <MyLazyComponent />
    </Suspense>

    关于javascript - React Suspense 延迟加载没有回退,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63624950/

    35 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com