在 React 项目中实现延迟加载和代码分割的分步指南
来源:dev.to
2024-10-17 14:10:00
0浏览
收藏
对于一个文章开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《在 React 项目中实现延迟加载和代码分割的分步指南》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

这是在 react 项目中实现延迟加载和代码分割的分步指南。我们将创建一个具有两个路由的简单应用程序,延迟加载组件。
第 1 步:创建一个新的 react 应用程序
如果您还没有创建一个新的 react 应用程序,请使用 create react app 创建一个新的 react 应用程序:
npx create-react-app lazy-loading-example cd lazy-loading-example
第2步:安装react router
安装react-router-dom用于路由:
npm install react-router-dom
第 3 步:设置延迟加载和代码分割
创建组件
- 在 src 目录中创建一个名为 components 的文件夹。
- 在组件内部,创建两个文件:home.js 和 about.js。
home.js
import react from 'react';
const home = () => {
return home page
;
};
export default home;
关于.js
import react from 'react';
const about = () => {
return about page
;
};
export default about;
更新app.js
现在,修改您的 app.js 文件以实现延迟加载和路由:
import react, { suspense } from 'react';
import { browserrouter as router, route, switch, link } from 'react-router-dom';
// lazy load components
const home = react.lazy(() => import('./components/home'));
const about = react.lazy(() => import('./components/about'));
function app() {
return (
loading... 第 4 步:运行您的应用程序
现在,运行您的应用程序以查看其实际效果:
npm start
第 5 步:测试延迟加载
- 打开浏览器并导航至 http://localhost:3000。
- 点击“home”链接即可查看 home 组件加载。
- 点击“about”链接即可看到about组件延迟加载。
要点
- react.lazy 用于动态导入组件,只有渲染时才会加载。
- suspense 用于处理加载状态,在获取延迟加载组件时显示回退。
- 这种方法通过将代码分割成更小的块,显着减少了初始加载时间。
额外的增强功能
您可以通过以下方式进一步增强您的设置:
- 在延迟加载的组件周围实现错误边界以捕获加载错误。
- 针对大型应用程序使用 react router 的高级路由策略。
如果您需要更多具体功能或其他帮助,请告诉我!
终于介绍完啦!小伙伴们,这篇关于《在 React 项目中实现延迟加载和代码分割的分步指南》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!
版本声明
本文转载于:dev.to 如有侵犯,请联系study_golang@163.com删除
使用 React、Nodejs 和 MongoDB 构建高性能全栈应用程序:可扩展性、速度和解决方案之旅
- 上一篇
- 使用 React、Nodejs 和 MongoDB 构建高性能全栈应用程序:可扩展性、速度和解决方案之旅
- 下一篇
- 在 GitHub-echo 中实现 TOML 配置支持
查看更多
最新文章
-
- 文章 · 前端 | 1小时前 | html · 前端 · javascript · 无障碍 · HTML dialog showModal returnValue cancel 事件 焦点恢复
- HTML dialog 关闭后焦点去了哪里:returnValue、cancel 事件与无障碍恢复
- 128浏览 收藏
-
- 文章 · 前端 | 4小时前 | 性能优化 · 浏览器 · javascript · 数据上报 · 重复提交 sendBeacon fetch keepalive 页面离开 埋点上报
- 浏览器页面离开前怎么可靠上报:sendBeacon、fetch keepalive 与重复提交边界
- 379浏览 收藏
-
- 文章 · 前端 | 5小时前 | 前端 · 性能 · javascript · Fetch API · 异步请求 · 竞态条件 搜索框 Fetch AbortController AbortSignal
- 前端搜索框为什么会被旧请求覆盖:AbortController、竞态与结果验收
- 497浏览 收藏
-
- 文章 · 前端 | 6小时前 | html · javascript · 表单 · 浏览器事件 · 前端 表单提交 submit事件 requestSubmit 原生校验
- 前端表单提交为什么会重复触发:submit 事件、原生校验与按钮禁用时机
- 200浏览 收藏
-
- 文章 · 前端 | 6小时前 | 前端 · javascript · 可访问性 · 前端拖拽排序 pointer capture 键盘拖拽 DOM顺序
- 前端拖拽排序为什么会跳回原位:pointer capture、DOM 顺序与键盘回退
- 351浏览 收藏
-
- 文章 · 前端 | 7小时前 | 浏览器 · javascript · css · 前端交互 · 前端交互 关闭动画 @starting-style transition-behavior Popover API
- 前端弹窗为什么会闪一下:Popover API、初始渲染与关闭动画的边界
- 307浏览 收藏
-
- 文章 · 前端 | 9小时前 | 前端 · 浏览器 · javascript · css · 交互体验 · CSS过渡 dialog popover CSS @starting-style 首次显示动画
- CSS @starting-style 首次显示动画怎么做:popover 与 dialog 的初始状态和降级边界
- 171浏览 收藏
-
- 文章 · 前端 | 10小时前 |
- Web Components adoptedStyleSheets 怎么共享组件样式:构造顺序、跨文档边界与回退方案
- 307浏览 收藏
-
- 文章 · 前端 | 12小时前 | html · 前端 · javascript · 表单 · 交互体验 · html 表单提交 前端交互 AbortController FormData 重复点击
- 前端表单提交如何防止重复点击:HTML formdata 事件、按钮状态与失败恢复
- 190浏览 收藏
-
- 文章 · 前端 | 12小时前 | 前端 · 浏览器 · javascript · css · 交互体验 · 滚动位置 渐进增强 View Transitions 跨文档导航 same-origin
- View Transitions 跨文档导航怎么接入:same-origin、降级方案与滚动位置恢复
- 412浏览 收藏
-
- 文章 · 前端 | 13小时前 | 前端 · 浏览器 · javascript · css · 交互体验 · 页面切换 渐进增强 View Transition API CSS 伪元素 首屏闪烁
- View Transition API 页面切换闪烁怎么查:快照时机、伪元素和降级方案
- 394浏览 收藏
-
- 文章 · 前端 | 14小时前 | 前端 · 浏览器 · javascript · 文件上传 XMLHttpRequest 上传进度 Fetch API
- Fetch API 上传文件没有进度怎么办:XMLHttpRequest 与现代浏览器反馈怎么选
- 290浏览 收藏

