默认情况下,当在项目根路径下执行npm run build时,create-react- app内部使用webpack将src/路径下的所有代码打包成一个JS文件和一个 CSS文件。

当项目代码量不多时,把所有代码打包到一个文件的做法并不会有什么影响。但是,对于一个大型应用,如果还把所有的代码都打包到一个文件中,显然就不合适了。试想,当用户访问登录页面时,浏览器加载的JS文件还包含其他页面的代码,这会延长网页的加载时间,给用户带来不好的体验。理想情况下,当用户访问一个页面时,该页面应该只加载自己使用到的代码。解决这个问题的方案就是代码分片,将JS代码分片打包到多个文件中,然后在访问页面时按需加载。

create-react-app支持通过动态import()的方式实现代码分片。

import() 接收一个模块的路径作为参数,然后返回一个Promise对象,Promise对象的值就是待导入的模块对象。

首页 我们建立个importComponent 组件。

然后到 router 路由文件里面引用

这样引入之后 打包后的js就会多出几个 ,这样就可以对react性能优化,实现组件的按需加载。

react 动态路 嵌套动子路由_react 路由动态加载组件,实现按需加载相关推荐

  1. react 动态路 嵌套动子路由_2020年,我是如何从一名Vueer转岗到React阵营

    前言 大家好呀,我是一名专注于Vue的前端萌新. 国庆后如约和大家见面了.经历了金九银十和十一长假后的我也要开始努力写文章了,这次主要是分享下我是如何快速横切到React技术栈.如果看文章的你正在学习 ...

  2. React单页如何规划路由、设计Store、划分模块、按需加载

    本项目地址:react-coat-helloworld react-coat 同时支持浏览器渲染(SPA)和服务器渲染(SSR),本 Demo 仅演示浏览器渲染,请先了解一下:react-coat 第 ...

  3. React Native按需加载 手Q狼人杀探索之路

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:http://mp.weixin.qq.com/s/mUzq4NaBHeF3T-NStLzuRw 作者:pe ...

  4. React Native 按需加载 手Q狼人杀探索之路

    导语:最近特别火的狼人杀和最近特别火的React Native会擦出什么样的火花呢?本文和您一同探讨RN性能优化的现实场景. 项目简介: 狼人杀游戏是多人实时性游戏,对流畅度等性能都有要求.作为大型游 ...

  5. vue-router详尽:编程式导航、路由重定向、动态路由匹配、路由别名、嵌套路由、命名视图

    vue-router编程式导航 在vue项目中经常用到this.$router.push() 和 this.$router.replace() 方法进行路由跳转就是编程式导航... 通俗理解编程式导航 ...

  6. 2022/9/5 嵌套路由(靠路由在vue里渲染套渲染),动态路由匹配以及开启propos配置动态路由

    嵌套路由 通过路由实现组件的嵌套展示 在about内嵌套路由 <template><div class="about-container"><h3&g ...

  7. Vue中路由嵌套(子路由)

    路由的嵌套就是点击一个路由地址后,继续点击,进入到另外一个路由地址下,即第二个路由就是第一个路由的子路由. 根据我们前面学习的VueRouter的知识,可以直接写出代码来实现: 一般写法 <!D ...

  8. Vue3(撩课学院)笔记07-vueRouter路由,创建路由,路由重定向,路由跳转,动态路由,路由懒加载,路由嵌套,路由参数穿传递的两种形式,通过事件来跳转路由

    1.vueRouter路由的两种模式 哈希模式:以#号分割,前端路由一般用hash模式比较多,可以兼容ie8以上,井号后面不发起请求 历史模式:putstate()和replaceState()方法入 ...

  9. umi +qiankun 主应用动态装载子应用(路由)解决方案

    umi +qiankun 主应用动态装载子应用(路由)解决方案 前言 接上一篇(https://www.yuque.com/blueju/blog/gtgndg),上一篇中使用的都是运行时动态注册子应 ...

最新文章

  1. OpenCV识别形状
  2. IOS开发中UIBarButtonItem上按钮切换或隐藏实现案例
  3. TDD, what, why, how
  4. 阿里钉钉陈航发布10亿“春雨计划”,推进企业级市场服务创新
  5. 软件原型设计工具Axure RP安装教程
  6. morlet小波matlab代码,morlet小波matlab程序
  7. 美国计算机科学和计算机工程专业的好大学,2021USNews美国计算机工程专业排名一览表...
  8. Method Swizzling 处理一类简单的崩溃
  9. 在ABAP里取得一个数据库表记录数的两种方法
  10. git+pylint实现python提交代码格式校验
  11. 小白必看!JS中循环语句大集合
  12. Yolov2 训练时anchor是如何使用的?build_target
  13. garmone build on sb2
  14. Unity Resource文件夹的使用
  15. 能否被2整除引发的思考
  16. Stein引理(Stein's lemma)
  17. 初创企业如何做高效持续交付
  18. 社工工具包 SEToolkit
  19. php spry文本域_spry菜单栏(二)
  20. sdk编译文件报错conflicting types for ‘kill‘

热门文章

  1. 企业战略:前瞻性决定发展性
  2. MVC中提示错误:从客户端中检测到有潜在危险的 Request.Form 值的详细解决方法...
  3. 日期不能交叉的检测算法
  4. mootools 简介
  5. Redis内部数据结构详解之简单动态字符串(sds)
  6. Linux的which查找环境变量的文件
  7. Linux安装screen时的问题
  8. jq点击所有子元素_jQuery删除/清空指定元素下的所有子节点的方法
  9. php 获取时间段 今天昨天本周上周本月上月本季度本年去年
  10. 太阳光是平行光吗_阳光照耀,万物生长——神奇的太阳光,到底是什么?