前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >React中Suspense和lazy的使用

React中Suspense和lazy的使用

原创
作者头像
挥刀北上
修改于 2021-11-01 07:35:09
修改于 2021-11-01 07:35:09
3.9K00
代码可运行
举报
文章被收录于专栏:Node.js开发Node.js开发
运行总次数:0
代码可运行

何时使用lazy函数,比如某个体积相对比较大的第三方库或插件(比如JS版的PDF预览库)只在单页应用(SPA)的某一个不是首页的页面使用了,这种情况就可以考虑代码分割,增加首屏的加载速度。

lazy函数可以单独使用,但是在加载组件时候,页面可能会出现空白,此时需要添加loading,这时就需要suspense了,代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const Foo = React.lazy(() => import('../componets/Foo));
<Foo />

上面的代码直接在函数中使用Foo组件页面加载时会出现白屏,所以需要suspense来包裹,代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<React.Suspense fallback={<div>loading...</div>}>
    <Foo/>
</React.Suspense>

例子2:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const OtherComponent = React.lazy(() => import('./OtherComponent'));

function MyComponent() {
  return (
    <div>
      <Suspense fallback={<div>Loading...</div>}>
        <OtherComponent />
      </Suspense>
    </div>
  );
}

OtherComponent是通过懒加载加载进来的,所以渲染页面的时候可能会有延迟,但使用了Suspense之后,可优化交互。在<OtherComponent />外面使用Suspense标签,并在fallback中声明OtherComponent加载完成前做的事,即可优化整个页面的交互

fallback 属性接受任何在组件加载过程中你想展示的 React 元素。你可以将 Suspense 组件置于懒加载组件之上的任何位置。你甚至可以用一个 Suspense 组件包裹多个懒加载组件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const OtherComponent = React.lazy(() => import('./OtherComponent'));
const AnotherComponent = React.lazy(() => import('./AnotherComponent'));

function MyComponent() {
  return (
    <div>
      <Suspense fallback={<div>Loading...</div>}>
        <section>
          <OtherComponent />
          <AnotherComponent />
        </section>
      </Suspense>
    </div>
  );
}

引用:React 按需加载 - 代码分隔

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
北京互联网大厂办公楼巡礼:腾讯、阿里
后厂村,聚集600余家国内外知名IT企业总部和全球研发中心;面积2.6平方公里;每平方公里产值高达969.1亿元;从业软件工程师7.79万人,总产值2519.6亿元;
Flowlet
2022/12/28
8K0
北京互联网大厂办公楼巡礼:腾讯、阿里
深夜十点,北京各大互联网企业的下班高峰才刚开始?
“师傅,您在哪个门?”下楼前,马科(化名)用手机预约了一辆网约车,当他走出公司总部大门时发现,门前已云集了大量网约车。
哲洛不闹
2018/09/14
7360
深夜十点,北京各大互联网企业的下班高峰才刚开始?
谷歌砸出10亿美元,要为湾区困难群众,建2万套经适房
而且!与以往在纽约购置办公园区、在全美各地建造数据中心不同,这个房地产计划,并非“自住房”或员工福利房,而是一个睦邻友好的公益行为:
量子位
2019/06/20
3790
谷歌砸出10亿美元,要为湾区困难群众,建2万套经适房
腾讯总部大厦「贴膜」了!因为它们
几个月前,腾讯员工yulan加入了由员工自发组建的防鸟撞项目组,包括她在内的几十位志愿者在北京、上海、深圳等的腾讯办公大厦进行为期一个月的鸟撞调研。
小腾资讯君
2023/10/16
3900
“小米们”的逃离
在中国互联网圈,有一个广为流传的段子:如果哪天全国的互联网都瘫痪了,那一定是后厂村大堵车了。恰巧,不久前镁客网受邀去北京参加新品发布会,地点就在后厂村。
镁客网
2018/12/17
6630
“小米们”的逃离
腾讯前海新总部,厘米级「图纸」首次公开
别小瞧这个厘米级项目,它们代表了前海总部建设里的无障碍「小心思」。为的是让每一位访客都能在园区各处畅行无阻,享受全龄友好的无障碍服务体验。
小腾资讯君
2023/12/05
2260
一组珍贵老照片,看看那些顶级公司创业初期的屌丝样!
这些老照片记录了“联想”、“腾讯”、“华为”……这些今天为人们所熟知的企业巨头最初的办公场所。也许现在你正如昨日的他们一样,在创业路上披荆斩棘,但看着他们今日的阳光万丈,是不是印证了那句话“梦想是要有的,万一实现了呢”。
曾响铃
2018/08/20
5140
一组珍贵老照片,看看那些顶级公司创业初期的屌丝样!
马化腾:我差点被员工投诉,就因为新的工作环境
腾讯的新大楼才是狂拽酷炫吊炸天的存在!就因为这个新的工作环境,我们的小马哥都差点儿被员工们投诉了。(心疼的抱抱小马哥三秒~) 下面小编准备了很多的图片供大家欣赏,准备好舔屏吧! 灯火通明的大楼 这座位于深圳滨海的大楼就是腾讯的全球新总部大厦!据说整栋大楼使用物联网和人工智能技术,是集数字化、智能化于一体的智慧大厦!一大堆名词是不是已经让你目眩神迷了?没关系,下面简单介绍一下几个新大楼的功能来开开眼界。 1.集数字化、智能化于一体的智慧大厦 1.用手机召唤的智能电梯 是不是经常在上下班高峰时期为“堵电梯”
企鹅号小编
2018/03/05
1.4K0
马化腾:我差点被员工投诉,就因为新的工作环境
走进腾讯华东地区总部 上海腾讯参访学习,预约上海腾讯
腾讯公司成立于1998年,是中国最早也是目前中国市场上最大的互联网即时通信软件开发商,同时也是中国最大的互联网公司之一。放眼整个中国乃至全球,腾讯都是一家成功的互联网企业,它代表中国企业在世界互联网版图中竖起了一面高高的旗帜。
泽沃商务考察Even
2021/08/09
3.2K0
小米斥资5.31亿元买地,将国际总部落户深圳
10月28日,小米集团旗下深圳小米信息技术有限公司以5.31亿元的价格拿下深圳市南山区后海中心区T107-0092地块,小米将在此建设小米国际总部。
镁客网
2020/11/06
6370
小米斥资5.31亿元买地,将国际总部落户深圳
中国台湾深圳青少年参观腾讯总部
1月25日上午,来自台湾的5位青少年与10位深圳本地的青少年齐聚深圳,共同探访了腾讯总部大厦。本次活动系深圳少年警讯组织,旨在进一步促进两岸三地交流互通,让两岸青少年共同感受国家科技发展先进成果。
腾讯智慧教育
2019/03/20
2.7K0
中国台湾深圳青少年参观腾讯总部
局外人观各大厂牌
我们列出了想要去公司的目录,然后思索如何寻找相应的人脉去帮助我们实现了解该公司的目的。
星辉
2019/02/20
5710
局外人观各大厂牌
重磅|腾讯打造虚实集成自动驾驶实践,重塑未来城市出行新体验
数字技术正在重构汽车、交通乃至城市,不断催生新事物的涌现。近年来,自动驾驶在我国发展迅速,单车智能与车路协同的结合成为适应我国的共识路线;虽受限于技术、法规等条件,高级别自动驾驶尚未能在开放城市道路运行,但集合L4级别的自动驾驶、5G远控、数字孪生等技术的“车路云一体化”自动驾驶实践已经陆续在智能网联示范区和智慧园区落地。
腾讯数字孪生
2023/09/20
4700
重磅|腾讯打造虚实集成自动驾驶实践,重塑未来城市出行新体验
腾讯以全真互联技术打造自动驾驶闭环实践,加速自动驾驶全面应用
随着电动化、智能化深度融合的时代来临,借助“双智协同”的重大战略机遇与我国新能源汽车产业蓬勃发展的良好基础,智能网联汽车进入技术快速演进、产业加速布局、政企双向发力的关键阶段。
腾讯自动驾驶
2023/11/13
3210
腾讯以全真互联技术打造自动驾驶闭环实践,加速自动驾驶全面应用
互联网巨头的碳中和计划
我国已承诺减少二氧化碳排放,争取2060年前实现碳中和。2020年12月,我国将“做好碳达峰、碳中和工作”纳入2021年的重点任务之一。
郭好奇同学
2021/01/25
9120
重庆招聘| 加入鹅厂,牛气UP
加入鹅厂 牛气UP! 魔幻2020即将过去 2021向我们招手~ 鹅厂带着年末的新鲜岗位 期待2021不一样的你! 岗位信息 网络信息处理岗 积极维护腾讯产品的信息内容安全 按照规定的标准和流程处理不良信息 工作地点:腾讯西南总部大厦 (重庆市渝北区云杉南路涉外商务区4栋) 岗位要求 1.大专及以上学历,有一年以上工作经验; 2.充满正能量,较强学习理解力,关注时事新闻; 3.适应轮班轮休工作安排。 工作时间 排班,每月休6-7天(含通宵班) 网申通道 薪酬福利 6.5k-9K/月 五险一金&商业
腾讯举报中心
2021/01/05
2.2K0
想来腾讯滨海总部?你只需要这个小程序!
腾讯临境产品团队联合行政接待团队打造的集游览参观、VR同屏带看、线上接待、图文视频观看于一体的新型沉浸式体验小程序【云上滨海】,现已正式发布上线。展厅线上预约参观接待欢迎联系腾讯云商务~快来预约一场云上参观吧! 前不久,我们一篇介绍鹅厂总部员工上班不湿脚的文章,引起不少朋友对腾讯总部滨海大厦的兴趣。 这一次,腾讯云通过VR和3D建模技术,直接把滨海大厦的公共开放区域搬上了云端。这也是大厦内部第一次对外界开放参观。 在微信上搜索进入“云上滨海”小程序,剩下的360度随便逛。 起点是大厦广场,你可
腾讯云音视频
2020/09/11
3.8K0
早报:北京暂停虚拟地址工商注册 联合办公企业将受冲击
1、北京暂停虚拟地址工商注册 联合办公企业将受冲击 北京的一些创业型企业和联合办公企业,正因为一些政策变化而受到影响。近日,有媒体报道称北京市朝阳区、丰台区、海淀区工商行政管理分局已经暂停受理共享办公空间、孵化器等虚拟地址工商注册登记。界面新闻记者致电优客工场工作人员,对方表示,海淀区、丰台区、朝阳区工商局的确已经发文,要求暂停虚拟地址工商注册,此前已经通过审核的则不受影响。其他区暂未公布相关政策,但预计其他区工商部门也会陆续跟进该政策。北京市某区工商局工作人员表示,该区已经暂停虚拟地址工商注册,企业进行
用户1335017
2018/03/09
1.9K0
早报:北京暂停虚拟地址工商注册 联合办公企业将受冲击
腾讯和字节待遇_字节和腾讯哪个值得去
大家好,我是鱼皮,最近这段时间,应该是正值大三的小伙伴最忙碌的时候,不少同学都在准备秋季校园招聘。
全栈程序员站长
2022/11/08
2.3K0
腾讯和字节待遇_字节和腾讯哪个值得去
地球一小时 | 腾讯竟然用这种姿势关灯
今天是地球一小时日 估计大多数人参与关灯一小时的姿势 都是酱婶儿的↓↓↓ 或者酱紫的 What?已经9012年了!!! 为什么你还在用这么古老的关灯方式?! 是时候表演真正的技术了 正确的关灯姿势应该是这样的: (腾讯滨海大厦地球一小时熄灯) 其实,一秒关闭整幢教学楼的灯具,只是腾讯微瓴系统的基础操作。 微瓴还可实现一秒操控空调、电脑、安防等各种智能设备,它让建筑有了“大脑”。 以腾讯滨海大厦为例,腾讯云的开放平台接入大厦内的各类设施设备,让每一个设备都能在智慧化管理平台上不断交互,整个
鹅老师
2020/06/10
1.9K0
推荐阅读
相关推荐
北京互联网大厂办公楼巡礼:腾讯、阿里
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档