码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • react-router-dom6 路由懒加载与组件懒加载


    react-router-dom6 路由懒加载与组件懒加载

    本文教学如何配置最新路由的懒加载 以及 组件懒加载

    组件懒加载

    组件引入方式

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9ps1oBfc-1660031012499)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9938f1f4b8dc47569113be08ba1f4fa4~tplv-k3u1fbpfcp-watermark.image?)]

    需要用到懒加载的组件:此时我这个组件默认是关闭的,类似于弹窗之类的,就需要最好做一个懒加载

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eLm4lgNq-1660031012501)(https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/c8485df510314ae38655584186a46ee8~tplv-k3u1fbpfcp-watermark.image?)]

    再配置一个过渡组件,就是等待我们懒加载的组件还没过来时运行此组件
    我这边是配置在index.tsx里面

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S8Pe2Yyu-1660031012502)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7e789387a3554211aa871367fea29c16~tplv-k3u1fbpfcp-watermark.image?)]

    这样就实现了组件懒加载,在我们需要将该组件懒加载的时候就采用lazy的方式导入即可

    路由懒加载

    有了组件懒加载在index.tsx中配置的过渡组件,我们这同样可以复用
    如果我们不想用也可以自己定制Suspense,嵌套在路由组件前即可如 lztest
    route index.tsx

    import { lazy, Suspense } from "react";
    import { Navigate } from "react-router-dom";
    
    // React 组件懒加载
    const TodoList = lazy(() => import("../commponet/TodoList"));
    const LazyTest = lazy(() => import("../page/LazyTest"));
    
    interface Router {
      name?: string;
      path: string;
      children?: Array;
      element: any;
    }
    
    const routes: Array = [
      {
        path: "/tsdemo",
        element: ,
      },
      {
        path: "/lztest/:name/:age/:sex",
        // element: ,
        element: (
          加载中....}>
            
          
        ),
      },
      {
        path: "/",
        element: ,
      },
    ];
    
    export default routes;
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37

    测试结果

    先降低网速

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qjy25HiV-1660031012503)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/20e0094287894b388117c06f37fdb16e~tplv-k3u1fbpfcp-watermark.image?)]

    刷新

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-U05V7DSv-1660031012505)(https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/25a57ff3160742caab3d20c1a78c3f48~tplv-k3u1fbpfcp-watermark.image?)]

    点击控制懒加载组件显示
    我们会发现此时会加载一个文件,这个文件就是对应的懒加载文件
    说明我们成功实现了懒加载

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DIwKAAbL-1660031012507)(https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ffc295415abf4a8499169e7864a1f354~tplv-k3u1fbpfcp-watermark.image?)]

    点击切换路由
    第一个是加载组件的懒加载文件
    第二个是加载路由组件的懒加载文件

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jpjibHgQ-1660031012512)(https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/cf3b171a2a1b4f8e82596b3ddce6adbc~tplv-k3u1fbpfcp-watermark.image?)]

    成功!

    在这里插入图片描述

  • 相关阅读:
    双向链表(带头双向循环链表)的实现
    解释 Git 的基本概念和使用方式。
    c++实现建造者模式
    动态规划---不相交的线,最长公共子序列,最大子数组和
    【逐步剖C】-第十一章-动态内存管理
    第四篇章:运行时数据区——共享空间
    前端通过range控制的rgba配色小工具
    八、线性代数二 ,矩阵的秩
    kettle从入门到精通 第五十三课 ETL之kettle MQTT/RabbitMQ consumer实战
    Spring Security内部工作原理
  • 原文地址:https://blog.csdn.net/kzj0916/article/details/126249202
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号