当前位置: 首页 > news >正文

百度一下搜索引擎海宁网站怎么做seo

百度一下搜索引擎,海宁网站怎么做seo,济南建立网站,教育培训网站背景 随着项目越来越大,打包后的包体积也越来越大,严重影响了首屏加载速度,需要对路由和组件做懒加载处理 主要用到了react中的lazy和Suspense。 废话不多说,直接上干货 路由懒加载 核心代码 import React, { lazy, Suspens…

背景

随着项目越来越大,打包后的包体积也越来越大,严重影响了首屏加载速度,需要对路由和组件做懒加载处理

主要用到了react中的lazy和Suspense。

废话不多说,直接上干货

路由懒加载

核心代码

import React, { lazy, Suspense } from "react";
const loading = () => <h3>loading....</h3>;
const Caidan1 = lazy(() => import("@/pages/mud1/caidan1"));const meunRoutes = [{name: "模块1",path: "/m1",icon: <AppstoreOutlined />,children: [{name: "gltf模型",path: "/m1/caidan12",icon: <AppstoreOutlined />,element: (<Suspense fallback={loading()}><Caidan1 /></Suspense>),},// 。。。。

配合路由表的完整例子

// 路由表
import React, { lazy, Suspense } from "react";
import Home from "../pages/home";
import Layout from "@/components/Layout";const loading = () => <h3>loading....</h3>;const Caidan1 = lazy(() => import("@/pages/mud1/caidan1"));
const Caidan2 = lazy(() => import("@/pages/mud1/caidan2"));
// 404页面
const NotFound = () => <h1>**** 404 ****</h1>;const meunRoutes = [{name: "模块1",path: "/m1",icon: <AppstoreOutlined />,children: [{name: "gltf模型",path: "/m1/caidan12",icon: <AppstoreOutlined />,element: (<Suspense fallback={loading()}><Caidan1 /></Suspense>),},{name: "模型动画",path: "/m1/caidan13",icon: <AppstoreOutlined />,element: (<Suspense fallback={loading()}><Caidan2 /></Suspense>),},],},
];// 配置路由表
const routes = [{path: "/",element: <Navigate to="/home" />,},{path: "/home",element: <Home />,},{path: "/",element: <Layout />,children: handleMenuRoutes(meunRoutes),},{ path: "*", element: <NotFound /> },
];// 处理menu routes
function handleMenuRoutes(arr) {let res = [];arr.forEach((item) => {if (item.children && item.children.length > 0) {item.children.forEach((yitem) => {let obj = {path: yitem.path,element: yitem.element,};res.push(obj);});}});return res;
}const AppRouter = () => useRoutes([...routes]);
export { AppRouter, meunRoutes };

组件懒加载

import { useEffect, useState, lazy, Suspense } from "react";const TestCpn = lazy(() => import("@/components/testCpn"));
const Home = () => {const [show, setShow] = useState(false);function fn() { setShow(true)}return (<div><button onClick={fn}>加载大组件</button>{show && (<Suspense><TestCpn /></Suspense>)}</div>);
};
export default Home;

效果
组件加载前
在这里插入图片描述
组件懒加载后
在这里插入图片描述
这样就会大大加快首屏加载速度

http://www.yayakq.cn/news/611571/

相关文章:

  • 岳阳市交通建设投资公司门户网站建设网站属于什么费用吗
  • 同学录网站建设网站外包费用怎么做分录
  • 吉林建设厅网站南宁关键词自然排名
  • 十大设计创意网站网站和ip建设
  • 衣柜做网站的关键词免费网站在线观看
  • 深圳市专业网站建设上海做淘宝网站建设
  • 泸州网站建设多少钱合肥响应式网站开发
  • 族谱网站建设wordpress 显示字体
  • 做网站需要编程免费无版权图片素材网站
  • 松门建设规划局网站wordpress modernizr
  • 自己怎么做短视频网站Wordpress向导
  • 哪里可以做购物网站wordpress配置数据库
  • 慈溪专业做网站公司大气蓝色wap网站模板
  • 网站开发的逻辑网站建设需不需要招标
  • 网站中文通用网址域名做英文简历的网站
  • 做电商网站的设计思路有什么网页设计案例100例
  • 简单的购物网站源码论坛备案 和网站备案
  • 竞价单页网站策划设计制作网站建设小程序
  • 网站备案工信部宣传册设计与制作用什么软件
  • 网站创建人是php网站开发最新需求
  • 为什么做企业网站新网 主办网站已备案
  • 汽车贸易网站建设方案网站设置在设备之间共享什么意思
  • 用vs2010做网站论文闵行网站建设多久能见效果
  • 山西太原网站建设公司有哪些学校网站建设方面汇报
  • 山西省吕梁市属于哪个市seo 页面
  • 建立网站站点方法现代农业建设 乡网站
  • 济南做网站要多少钱页面跳转的方法
  • 网站开发制作云盘个人网站 域名选择
  • 四川营销网站建设西固网站建设
  • 怎么用思维导图做网站结构图青岛做网站推广