-
预先准备两个路由组件(Home组件和About组件)
javascriptimport React, { Component } from 'react export default class About extends Component { render() { return ( <div> about组件 </div> ) } }javascriptimport React, { Component } from 'react' export default class Home extends Component { render() { return ( <div> home组件 </div> ) } } -
准备一个普通组件(Loading组件)
javascriptimport React, { Component } from 'react' export default class Loading extends Component { render() { return ( <div> Loading... </div> ) } } -
同文件夹下新建index.jsx文件
javascriptimport React, { Component, Suspense, lazy } from 'react' import { NavLink,Route} from 'react-router-dom' import Loading from './Loading' // 1.通过React的lazy函数配合import()函数动态加载路由组件 ===> 路由组件代码会被分开打包 const Home = lazy(()=> import('./Home')) const About = lazy(()=> import('./About')) export default class lazyLoad extends Component { render() { return ( <div> <NavLink to='/home'>Home</NavLink> <NavLink to='/about'>About</NavLink> {/* 2.通过 <Suspense> 指定在加载得到路由打包文件前显示一个自定义loading界面 */} <Suspense fallback={<Loading/>}> <Route path='/home' component={Home}></Route> <Route path='/about' component={About}></Route> </Suspense> </div> ) } }网速较慢时,可以看到loading组件效果。
react路由组件的lazyLoad
种草小幺儿.2023-11-09 15:08
相关推荐
多则惑少则明25 分钟前
Vue开发系列——自定义组件开发用户2506949216132 分钟前
next框架打包.next文件夹部署程序猿小蒜35 分钟前
基于springboot的校园社团信息管理系统开发与设计一叶难遮天35 分钟前
开启RN之旅——前端基础申阳36 分钟前
Day 4:02. 基于Nuxt开发博客项目-整合 Inspira UI程序猿_极客39 分钟前
【期末网页设计作业】HTML+CSS+JavaScript 猫咪主题网站开发(附源码与效果演示)IT古董40 分钟前
【前端】从零开始搭建现代前端框架:React 19、Vite、Tailwind CSS、ShadCN UI 完整实战教程-第1章:项目概述与技术栈介绍有点笨的蛋42 分钟前
从零搭建小程序首页:新手也能看懂的结构解析与实战指南爱宇阳42 分钟前
Vue3 前端项目 Docker 容器化部署教程Irene199143 分钟前
前端缓存技术和使用场景