我在reactjs.org中看过一些例子,但我想知道他们试图解决的问题和/或它背后的魔力是什么。除了反应文档中的内容之外,我如何在实际项目中使用它。
我知道有两个React Suspense用例(并且非常肯定会被发现)。请注意,在下面的答案中,我使用suspense
作为实用参考,实际上有更多的组件使用,如lazy
,react-cache
等。
较低的time to interactive a.k.a TTI指标是衡量网站对用户感受速度的一种方式。如果您在浏览器开发工具中检查网络资源,您将看到等待下载javascript文件的时间非常长。即使它被缩小和压缩,也可能不是最佳的。
对于e.x.如果您的网站在某个时候需要数据可视化库(比如Highcharts),如果它不是您的用户会看到的第一件事,则您不需要使用第一个javascript文件发送该可视化组件。这将从您的初始捆绑包中节省大量内容并改善您的TTI指标。
这是通过webpack动态导入的组合魔法完成的,对Lazy和React Suspense做出反应(这就是文档所指的)
我认为这仍然是一项正在进行中的工作,但我记得是团队正在努力的事情。如果您的组件需要从服务器(API调用)获取其数据,那么您将看到一些常见问题,并且您将尝试以某种身份处理它们:
这些是共同关注的问题,也就是悬念将会有所帮助。
可能感兴趣的其他资源