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

React-Router之BrowserRouter 与 HashRouter切分方式和基本概念

查看本文 首先 你要对React-Router有一个基本了解 如果不清楚可以查看我的文章
初识react-router 做一个简单的路由切换

然后我们代码是这样
在这里插入图片描述
这里 我们有两个路由 对应两个组件
在这里插入图片描述
在这里插入图片描述
可以看到 我们的形式是 /路由代理名

但我们来看一个京东到家的界面
http://www.jddj.com/#/
在这里插入图片描述
明显的发现 他的路径前面有一个 井号
在这里插入图片描述
因为我们现在用的是BrowserRouter 的路由形式 我们可以换成HashRouter来实现这个效果

这里 将

import { BrowserRouter as Router,Routes,Route } from "react-router-dom";

改为

import { HashRouter as Router,Routes,Route } from "react-router-dom";

然后在界面上 输入 项目地址/#/路由代理名即可

在这里插入图片描述

两种路由的局别

首先 他们的表现形式不同 BrowserRouter 是 / 而 HashRouter是 /#/
他们的实现原理不同 HashRouter用的是锚点链接 BrowserRouter则用的是H5的新特性 具体的可以自己去找
使用方面 推荐用HashRouter 不然当你项目上线是 BrowserRouter就容易出现刷新404的问题 需要后台特殊处理重定向 来避免类似问题

http://www.dtcms.com/a/42.html

相关文章:

  • 【数据结构基础】之数组介绍,生动形象,通俗易懂,算法入门必看
  • 鏖战 Web 性能优化:HTTP
  • CBAM: 卷积块注意模块
  • 总结机器学习优化器Optimizer
  • 【前端验证】被动响应型uvm_model环境搭建——以握手型ram_model为例
  • 黑胶歌曲没权限,还好我会Python,一分钟一个歌单,硬盘有点不够用了~
  • 第二站:分支与循环(终幕)一些经典的题目
  • ~外中断~
  • 【Linux】软件包管理器 yum 与编辑器 vim 的基本使用
  • 基于MATLAB的指纹识别算法仿真实现
  • 关于xilinx BRAM IP的延迟以及流程
  • 基于马科维茨与蒙特卡洛模型的资产最优配置模型(Matlab代码实现)
  • 相对于java,C++中的那些神奇语法
  • 【0136】【libpq】startup packet应用机制及构建过程(6)
  • 【JavaWeb】Tomcat
  • 反应性叠氮化物N3-PEG-NH2,Azide-PEG-Amine,叠氮-聚二乙醇-胺
  • Eclipse的下载与安装
  • 【物联网开发】物联网开发从业者参考软件技能(总结)
  • 课堂笔记| 第七章:多态
  • 初识C++ (二)
  • 【笔试题】【day14】
  • Webstorm克隆Git后npm install报错
  • 网络原理——网络层与数据链路层
  • JavaScript---常用JS方法(utils.js)额外篇
  • 并发编程中的原子性,可见性,有序性问题
  • MySQL的条件判断函数
  • L1-058 6翻了 (15 分)-PAT 团体程序设计天梯赛 GPLT
  • Tomcat I/O 组件——NioEndpoint 再深入
  • 【牛客网刷题】VL8-VL10 generate for语句、比较数大小、function的使用
  • 改进YOLOv7系列:首发最新结合多种X-Transformer结构新增小目标检测层,让YOLO目标检测任务中的小目标无处遁形