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

如何做网站布局优化旅游网站开发的目的

如何做网站布局优化,旅游网站开发的目的,湖北建站公司,手机制作表格今天我们来继续探讨react的路由跳转 首先,创建router文件夹中的index import { lazy } from "react"; import { Outlet,useRoutes } from react-router-dom; //引入页面,引用了路由懒加载 const One lazy(() > import(../pages/one)); c…

今天我们来继续探讨react的路由跳转

首先,创建router文件夹中的index

import { lazy } from "react";
import { Outlet,useRoutes } from 'react-router-dom';
//引入页面,引用了路由懒加载
const One = lazy(() => import('../pages/one'));
const Two = lazy(() => import('../pages/two'));
const Three = lazy(() => import('../pages/three'));
//设置页面的路由路径
const routes = [{path: '/one',element: <One/>,},{path: '/two',element: <Two/>,children: []},{path: '/three',element: <Three/>,}
];
const WrappedRoutes = () => {return useRoutes(routes);};export default WrappedRoutes;

之后就是App.js页面了,我的layout是写在app.js里的,所以要在app.js进行设置

import React, { useState,lazy } from 'react';
import {MenuFoldOutlined,MenuUnfoldOutlined,UploadOutlined,UserOutlined,VideoCameraOutlined,
} from '@ant-design/icons';
import { Layout, Menu, Button, theme } from 'antd';
import WrappedRoutes from './router/index'; // 引入路由表
import { useLocation, useNavigate,Routes, Route } from 'react-router-dom';
const One = lazy(() => import('./pages/one'));
const Two = lazy(() => import('./pages/two'));
const Three = lazy(() => import('./pages/three'));
const { Header, Sider, Content } = Layout;const App: React.FC = () => {const [collapsed, setCollapsed] = useState(false);const {token: { colorBgContainer },} = theme.useToken();const navigate = useNavigate();const { pathname } = useLocation(); // 获取当前urlconst handleClick = (e: any) => {// 获取当前点击事件的key值,key值就是我们给页面配置的路由啦console.log('key', e.key);navigate(e.key,{replace:true}); // 实现跳转}return (<Layout><Sider trigger={null} collapsible collapsed={collapsed}><div className="demo-logo-vertical" /><Menutheme="dark"mode="inline"selectedKeys={[pathname]}onClick={handleClick}   //给侧边栏item设置点击事件defaultSelectedKeys={['1']}items={[{key: '/one',icon: <UserOutlined />,label: 'nav 1',},{key: '/two',icon: <VideoCameraOutlined />,label: 'nav 2',},{key: '/three',icon: <UploadOutlined />,label: 'nav 3',},]}/></Sider><Layout><Header style={{ padding: 0, background: colorBgContainer }}><Buttontype="text"icon={collapsed ? <MenuUnfoldOutlined /> : <MenuFoldOutlined />}onClick={() => setCollapsed(!collapsed)}style={{fontSize: '16px',width: 64,height: 64,}}/></Header><Contentstyle={{margin: '24px 16px',padding: 24,minHeight: 280,background: colorBgContainer,}}>{/*路由出口 */}<Routes><Route exact path="/one" element={<One />} /><Route exact path="/two" element={<Two />} /><Route exact path="/three" element={<Three />} /></Routes></Content></Layout></Layout>);
};export default App;

到这里还有最重要的一步,因为我们这是的路由懒加载,这个时候跳转是会报错的

一直出现不能读到pathname,从<router>的时候就出现这个问题,那么问题估计出现在<router>这个标签上。找不到路径名,那就是没有找到地址于是我把<router>换成了<BrowserRouter>,就可以了。

import React,{ Suspense } from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
import { BrowserRouter } from 'react-router-dom';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<React.StrictMode><BrowserRouter>{/* 在使用组件懒加载的时候,在外面套一个react的组件:Suspense ,否则会报错没有  */}<Suspense><App /></Suspense></BrowserRouter></React.StrictMode>
);
reportWebVitals();

最后,在使用路由懒加载的同时,一定要记得使用<Suspense>嵌套,否则还是会报错,切记切记

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

相关文章:

  • 做网络推广常用网站适合在线做笔试的网站
  • 站长工具爱情岛国外二维码在线查询
  • 网站建设的报价方案企业建网站好
  • 网站建设案例分析题.xyz做网站怎么样
  • 大气物流网站源码上海网页制作服务公司
  • 专业网站建设公司哪个公司好临沂网站seo
  • 哈尔滨制作网站价格济南外贸seo
  • 营销网站建设选择原则兰州网络推广优化网
  • 网站建设丶金手指下拉12珠海市企业网站制作品牌
  • 国内it外包龙头企业网站seo策划
  • asp作业做购物网站代码长沙建网站公司
  • 上海浦东建筑建设网站污水处理工程做网站建设业务员怎么样
  • 品牌网站建设报价单vs和php哪个做网站好
  • 安顺网站开发公司外贸推广软件
  • 邯郸网站制作哪家强济宁网站运营策略
  • 上海建设工程施工许可证查询网站行业门户网站解决方案
  • 帮别人做视频剪辑的网站北京网站建立公司
  • 设一个网站链接为安全怎么做电商seo
  • 蚂蚁网站建设主题网站设计欣赏
  • 微信h5免费制作网站模板下载中国互联网协会调解中心
  • 在网站中添加搜索引擎php开源网站 网上商城
  • 乐都企业网站建设多少钱网站维护与推广定义
  • 做摄影网站的公司羽毛球赛事2022直播
  • 一个做网站的团队需要哪些wordpress自动上传外链图片
  • 网站开发怎么找客户做网站赤峰
  • 用虚拟机做网站服务器吗外网设计灵感网站
  • 做网站软件图标是一个箭头的做二手网站赚钱不
  • 深圳市住房建设部官方网站企业微网站开发
  • 盘锦做网站多少钱七七网站建设
  • 做公司网站的南宁公司什么网站可以做会计题目