React 16.6 引入了 Suspense ,它能够在某些时候(比如通过 API 调用获取数据)暂停渲染并展现一个加载中的指示器。
在 常见的简单场景中,React Suspense 消除了使用 Redux 的必要性 ,React 专家 Ryan Florence 这样说到:
如果你使用 Redux 的主要场景是将其作为服务端数据的客户端缓存,那么 Suspense 可以取代对 Redux 的使用。我之所以考虑这样做是因为这样能够让代码更简洁,同时能够有效管理 spinner。
对于更复杂的状态管理,比如同步状态到 API 和 localStorage, Redux 这种方式所提供的价值超过了 Suspense。
Bartosz Szczeciński 是来自波兰 GFT 的软件工程师,他认为 Suspense 将会对 React 的使用产生重要的影响:
我们可能会看到许多库会率先采用这种解决方案,并且必须调整我们的最佳实践 (在 Render 中调用 AJAX 请求突然间变得可行了),但我相信通过这种方式我们能够为用户创建更好的应用程序和体验!
React 16.6 发布版本只包含了 Suspense 的一个使用场景,即通过 React.lazy()
和 <React.Suspense>
实现懒加载组件。React 优化代码切分的方式以及 Suspense 的用法都包含在 React 代码切分指南
文档中。
除了代码切分之外,React 团队还计划为 Suspense 添加额外的功能,包括处理数据抓取以及与 GraphQL 库的集成。
Suspense 服务端渲染的支持计划在 2019 年实现。
React 是遵循 MIT 许可证的开源软件。React 鼓励开发者在遵循 React 贡献指南 和 Facebook 开源准则 的前提下,通过 React GitHub 项目 为其做出贡献和提供反馈。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- fetch使用,ajax替代方案
- Async Generators 作为状态管理的替代方案
- 一种巧妙的drawable.xml替代方案
- [译] Async Generators 作为状态管理的替代方案
- 【modernPHP专题(5)】类多继承的替代方案Traits
- ReactOS 0.4.13 发布,Windows 系统的开源替代方案
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。