广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >react如何用懒加载减少首屏加载时间
  • 284
分享到

react如何用懒加载减少首屏加载时间

2024-04-02 19:04:59 284人浏览 独家记忆
摘要

目录使用安装如何在路由中使用?加载速度对比最近在写一个React-ant-admin的集成框架用于快速搭载中后台项目。其中遇到很多问题,最重要的应该是访问速度了。我就想 react

最近在写一个React-ant-admin的集成框架用于快速搭载中后台项目。其中遇到很多问题,最重要的应该是访问速度了。我就想 react 可不可以和 Vue 一样用路由懒加载来减少首页渲染所花费的时间。

于是找到了一个很好用的轮子:@loadable/component

使用

安装


npm install @loadable/component -D
# or use yarn
yarn add @loadable/component -D

如何在路由中使用?

在src/router/index.js文件中按照如下举例来写:


import React from "react";
import { Route, Switch } from "react-router-dom";
import routerList from "./routes";

const router = () => {
  return (
    <Switch>
      {routerList.map((item) => {
        const { component: Component, key, path, ...itemProps } = item;
        return (
          <Route
            exact={true}
            key={key}
            path={path}
            render={(allProps) => <Component {...allProps} {...itemProps} />}
          />
        );
      })}
    </Switch>
  );
};

export default router;

src/router/routes.js文件按照如下举例来写:


import loadable from "@loadable/component";

const Error404 = loadable(() => import("@/pages/err/404")); // 对应文件 src/pages/err/404.js
const Home = loadable(() => import("@/pages/home"));
const Demo = loadable(() => import("@/pages/demo"));

const routerList = [
  {
    path: "/",
    key: "home",
    components: Home,
  },
  {
    path: "/demo",
    key: "demo",
    components: Demo,
  },
  {
    path: "*",
    key: "404",
    components: Error404,
  },
];

export default routerList;

src/App.js文件按照如下举例来写:


import React from "react";
import { BrowserRouter as Router } from "react-router-dom";
import Routes from "./router";
export default function App() {
  return (
    <Router>
      <Routes />
    </Router>
  );
}

此时可以去页面查看切换路由的时候是否动态加载了 js 文件。若切换路由加载了 js 文件,说明懒加载路由成功!

加载速度对比

在没有使用@loadable/component之前
服务器带宽1M,gzip压缩,文件大小2MB左右,服务器请求加载时间4.3s左右

使用路由懒加载
服务器带宽1M,gzip压缩,文件大小1MB左右,服务器请求加载时间1s左右

以上就是react如何利用懒加载减少首屏加载时间的详细内容,更多关于react懒加载减少加载时间的资料请关注编程网其它相关文章!

--结束END--

本文标题: react如何用懒加载减少首屏加载时间

本文链接: https://www.lsjlt.com/news/123726.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • react如何用懒加载减少首屏加载时间
    目录使用安装如何在路由中使用?加载速度对比最近在写一个react-ant-admin的集成框架用于快速搭载中后台项目。其中遇到很多问题,最重要的应该是访问速度了。我就想 react ...
    99+
    2022-11-12
  • 如何减少ASP IDE打包加载时间?
    ASP IDE是一款非常流行的集成开发环境,用于开发ASP.NET应用程序。但是在使用ASP IDE时,我们可能会遇到一些问题,例如打包和加载时间过长。这些问题可能会影响我们的开发效率和用户体验。在本文中,我们将介绍如何减少ASP IDE打...
    99+
    2023-08-21
    ide load 打包
  • NPM和PHP缓存:如何使用它们来减少网站的加载时间?
    在今天的快节奏生活中,对于网站用户来说,等待网站加载可能是最令人沮丧的事情之一。为了解决这个问题,许多网站都开始使用缓存技术来加速网站的加载速度。本文将介绍NPM和PHP缓存,并讲解如何使用它们来减少网站的加载时间。 一、NPM缓存 1....
    99+
    2023-07-25
    缓存 教程 npm
  • VUE如何优化单页应用首屏加载速度
    小编给大家分享一下VUE如何优化单页应用首屏加载速度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!单页应用会随着项目越大,导致首...
    99+
    2022-10-19
  • 如何使用Vue加载动画库来减少我们网站的跳出率
    这篇文章主要为大家展示了“如何使用Vue加载动画库来减少我们网站的跳出率”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用Vue加载动画库来减少我们网站的跳...
    99+
    2022-10-19
  • 如何解决css使用@keyframes加载图片首次循环时出现白色间隙问题
    小编给大家分享一下如何解决css使用@keyframes加载图片首次循环时出现白色间隙问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!问题解说:在使用css 的...
    99+
    2023-06-08
  • 你是否知道如何使用Python和Unix来优化Laravel的加载时间?
    当今互联网时代,网站的加载速度对于用户体验来说至关重要。Laravel作为一款流行的PHP框架,也面临着优化加载时间的挑战。本文将介绍如何使用Python和Unix来优化Laravel的加载时间。 一、优化Composer自动加载 Comp...
    99+
    2023-10-14
    unix load laravel
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作