码迷,mamicode.com
首页 > 其他好文 > 详细

React.lazy和React.Suspense异步加载组件

时间:2019-12-02 11:55:29      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:back   lazy   错误处理   oam   splay   details   name   spinner   ada   

在React16.6中引入了React.lazy和React.Suspense,这两个组件,可以用来实现异步加载组件。

例如:

const johanComponent = React.lazy(() => import(/* webpackChunkName: "johanComponent" */ ‘./myAwesome.component‘));
 
export const johanAsyncComponent = props => (
  <React.Suspense fallback={<Spinner />}>
    <johanComponent {...props} />
  </React.Suspense>
);

对比react-loadable,React.Suspense还是有一些不足。

1. 加载组件缺少delay参数,不能解决请求快速完成时的"闪烁"问题,需要自己封装

2. 没有内置的加载错误处理方法,需要自己去处理

 

仍然推荐使用react-loadable来异步加载组件,暂时不用React.Suspense。

 

参考:https://blog.csdn.net/roamingcode/article/details/85946380

React.lazy和React.Suspense异步加载组件

标签:back   lazy   错误处理   oam   splay   details   name   spinner   ada   

原文地址:https://www.cnblogs.com/mengff/p/11969640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!