react路由的使用 react-router-dom 、二级路由的样式丢失问题、路由传参

本文详细介绍了React路由的实现原理,包括BrowserRouter和HashRouter两种模式。讲解了路由组件与普通组件的区别,并展示了如何基本使用react-router-dom进行路由配置。特别讨论了二级路由的样式丢失问题及其解决方案,如修改引入文件路径、使用HashRouter。同时,文章还探讨了路由参数传递的三种方式:params、search和state。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

路由实现原理

路由实现借助bom身上的history 实现的,点击路由链接实现地址栏改变,路由器监听到地址的变化将需要展示的路由组件展示出来

路由的俩种模式

  1. BrowserRouter

  2. HashRouter 路径后面会有一个#号,所有路由链接都会跟在#号后面(较好的兼容性)

路由组件和一般组件

  • 路由组件一般放在pages文件夹下,一般组件放在conponents文件夹下

  • 路由组件需要路由器匹配路径进行展示,一般组件需要手动书写展示

  • 路由组件收到路由器的管理

路由的基本使用

  1. 安装react-router-dom

  2. 引入路由器,在app组件中根据需要引入路由器,将app组件交给路由器管理

  3. 路由跳转链接为<link to=""></link>属性为需要跳转的链接

  4. 如果路由导航有样式需要用到<nactiveLink></nactiveLink> 标签,该标签会给正在展示的路由导航添加默认的定义的类名active也可以用activeClassName属性进行更改所需类名

  5. 当有很多的路由导航需要展示时样式时可以将<nactiveLink></nactiveLink> 进行二次封装,将不一样的属性通过props传递优化代码,

    • 标签体内容也可以通过props传递,默认会收集在props的 children属性上

  6. switch 路由会向下匹配即匹配到路由后不会停

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值