全栈的自我修养 ———— react中router入门+路由懒加载

router

下载router

复制代码
npm install react-router-dom

配置view

如下将组件倒出

js 复制代码
const Login = () => {
    return <div>这是登陆</div>
}
export default Login

创建目录

配置index.js

React.lazy有路由懒加载的功能,以免白屏、加载时间太长,

会看当前使用的组件,首先导入需要的,其他组件缓存加载!

fallback中也支持添加一个组件,这个组件在加载时候会出来显示

js 复制代码
import { createBrowserRouter } from 'react-router-dom'
import { Suspense } from 'react';
import React from 'react';
const LazyLogin = React.lazy(() => import('../view/Login'));
const LazyIndex = React.lazy(() => import('../view/Index'));
const router = createBrowserRouter([
  {
    path: '/',
    element: (
      <Suspense fallback={<div>Loading...</div>}>
        <LazyLogin></LazyLogin>
      </Suspense>
    )
  },
  {
    path: '/login',
    element: (
      <Suspense fallback={<div>Loading...</div>}>
        <LazyLogin></LazyLogin>
      </Suspense>
    )
  },
  {
    path: '/index',
    element: (
      <Suspense fallback={<div>Loading...</div>}>
        <LazyIndex></LazyIndex>
      </Suspense>
    )
  }
]);

export default router;
相关推荐
C_心欲无痕3 小时前
vue3 - defineExpose暴露给父组件属性和方法
前端·javascript·vue.js·vue3
贺今宵4 小时前
安装better-sqlite3报错electron-vite
javascript·sql·sqlite·sqlite3
2501_944446004 小时前
Flutter&OpenHarmony文件夹管理功能实现
android·javascript·flutter
王林不想说话7 小时前
React自定义Hooks
前端·react.js·typescript
颜酱7 小时前
滑动窗口详解:原理+分类+场景+模板+例题(视频贼清晰)
javascript
橙某人7 小时前
LogicFlow 交互新体验:让锚点"活"起来,鼠标跟随动效实战!🧲
前端·javascript·vue.js
gustt7 小时前
React 跨层级组件通信:从 Props Drilling 到 useContext 的实战剖析
前端·react.js
程序猿的程7 小时前
Stock写给前端的股票行情 SDK: stock-sdk,终于不用再求后端帮忙了
前端·javascript·node.js
用户新7 小时前
V8引擎 精品漫游指南 -解析篇 语法解析 AST 作用域 闭包 字节码 优化 一文通关
前端·javascript
社恐的下水道蟑螂8 小时前
深入理解 React 中的 Props:组件通信的桥梁
前端·javascript·react.js