引言

代码分割是为了解决代码包过大导致加载缓慢的问题,通过将代码“分块”,懒加载部分块,使得初始加载的时候只需加载少量代码,避免加载用户永远不需要的代码。

Suspense 和 React.lazy 就是实现代码分割的有效方式

Suspense 和 React.lazy 的使用

懒加载 OtherComponent 组件,在组件加载的过程中,显示<div>Loading…</div>

import React, { Suspense } from 'react';const OtherComponent = React.lazy(() => import('./OtherComponent'));function MyComponent() {return (<div><Suspense fallback={<div>Loading...</div>}><OtherComponent /></Suspense></div>);
}

React.lazy(() => import('./OtherComponent'))就是import OtherComponent from './OtherComponent'的懒加载版本

用<Suspense>标签将 lazy 组件包裹起来,可以包裹多个

fallback 属性接受任何在组件加载过程中你想展示的 React 元素

React Suspense lazy相关推荐

  1. react 日历组件_anujs1.5.1支持React.Suspense与lazy

    React16是一个实验版本,除了测试它的新fiber架构外,还添加了大量新功能.其他React.Suspense与React.lazy就是重磅中的重磅. 随着前端的APP化,不断集成功能,页面越来越 ...

  2. React Suspense提供Redux的替代方案

    React 16.6引入了Suspense,它能够在某些时候(比如通过API调用获取数据)暂停渲染并展现一个加载中的指示器. 在常见的简单场景中,React Suspense消除了使用Redux的必要 ...

  3. react hooks使用_何时使用React Suspense和React Hooks

    react hooks使用 React Suspense对Monad就像钩子对应用符号一样 (React Suspense is to a Monad as Hooks are to Applicat ...

  4. react antd confirm content list_react简单的项目架构搭建过程

    前言 react官方推荐的脚手架create-react-app因为想给用户的最大自由度所以并没有像vue的脚手架那样生成的项目架构那么齐全,用这个写写demo还行,但是真正用在项目上还是不太合适的. ...

  5. 把这304道React的面试题刷完,前端面试没有在怕的!

    Core React 什么是 React? React 是一个开源前端 JavaScript 库,用于构建用户界面,尤其是单页应用程序.它用于处理网页和移动应用程序的视图层.React 是由 Face ...

  6. React 面试题 回答

    原文https://github.com/semlinker/reactjs-interview-questions 本项目的面试题来源于 sudheerj/reactjs-interview-que ...

  7. react webpack配置

    react webpack配置 接上期 webpack的基础配置 同样附上个人git仓库地址:https://gitee.com/zhaosir1/webpack-base-react-cli.git ...

  8. 【React】React官方文档学习小记

    1.setState可能是异步的 解决:将一个函数传给setState 2.setState是浅合并 3.jsx的事件必须传入的是函数,而不是字符串, onClick必须是小驼峰写法 onClick= ...

  9. react使用nprogress

    nprogress用途 nprogress主要应用的场景为页面切换和请求数据,在进行这两项操作时浏览器的顶部会出现进度条,优化用户体验. 效果图 1.页面切换时 2.请求接口时 显示的效果都是一致的. ...

  10. (六)构建优化(揭开webpack性能优化的内幕)

    构建优化 webpack的优化配置[了解这些优化配置才敢说会用webpack] Tree-shaking JS压缩 作用域提升 Babel的优化配置 webpack的依赖优化 noParse(不解析) ...

最新文章

  1. python批量删除特定字符_根据某个特定字符删除一行
  2. spark学习13(spark RDD)
  3. android自定义组合view,自定义View之组合View
  4. 每日一小练——按字典顺序列出全部子集
  5. android定时循环,Android AlarmManager实现定时循环后台任务
  6. 赛玛共享按摩椅前端蓝色UI+分销返利+去除短信注册验证
  7. 服务器如何用光盘拷文件材料,云服务器如何挂载光盘
  8. 捷联惯导算法与组合导航原理讲义捷联惯导基础知识剖析目录
  9. 淘宝京东查看价格历史的chrome插件
  10. 《吴忠与富富平》之一:秦统一前后的吴忠及秦汉对吴忠地区的开发
  11. 核心单词Word List 38
  12. Gartner到底怎么回事?
  13. java倒序输出英文句子_英文句子反转 -- 面试题(Java)
  14. 计算机硬件技术基础 试题与答案,计算机硬件技术基础网上作业及答案
  15. [Linux Audio Driver] Qualcomm平台音频GMS认证器件要求
  16. 双系统,主系统损坏,如何启动另一个系统
  17. 深度学习训练之optimizer优化器(BGD、SGD、MBGD、SGDM、NAG、AdaGrad、AdaDelta、Adam)的最全系统详解
  18. 安全多方计算之BGW算法
  19. 宜信智能监控平台建设实践
  20. 手机桌面左右滑屏不成功问题log分析

热门文章

  1. wifi mouse linux,WiFi Mouse Pro
  2. python科技新闻爬取
  3. 总结解决 No suitable driver found for jdbc:mysql//localhost:3306/ 问题的解决方案,各种情况都已囊括,希望可以帮助到有需要的各位
  4. 跟着猫哥学Golang[8] - 函数
  5. 360浏览器登录新浪微博图标显示为字母及占用CPU过高问题的解决
  6. 微信小程序——打开地图 选择位置 完整功能实现代码(定位,检索周边,可移动选点,可搜索,腾讯地图API)
  7. HFSS学习笔记—12.矩形微带贴片天线
  8. OneZero第四周第五次站立会议(2016.4.15)
  9. 如何去实现机械灵巧手玩魔方和弹钢琴_我学会了玩魔方
  10. 百练2706 麦森数