(七)路由的模糊匹配与严格匹配
2023年3月16日
🍇一、路由的模糊匹配与严格匹配
- 模糊匹配,下面的实例代码是可以匹配组件成功的(只要注册路由中包含在导航路由中的第一层就可以匹配成功)
<!-- home 导航路由 -->
<NavLink to="/home/a/b">Home</NavLink>
<!-- 这样是匹配不成功的 -->
<NavLink to="/a/home/b">Home</NavLink>
<NavLink to="about">About</NavLink>
<!-- 可以正常匹配到home路径 -->
<Router path="/home">
<Router path="/about">
- 开启精准匹配在
Router
组件中把exact
属性改为true
就可以开启精准匹配
<!-- home 导航路由 -->
<NavLink to="/home/a/b">Home</NavLink>
<NavLink to="about">About</NavLink>
<!-- 开启了严格模式不能匹配成功 -->
<Router exact={true} path="/home">
<Router exact={true} path="/about">
总结
默认使用的是严格匹配(简单记:【输入的路径】必须要包含【匹配的路径】,并且顺序要一致)
开启严格模式:
<Router exact={true} path="/xxx" component={xxx}>
严格匹配不要随便开启,需要在打开,有些时候会导致无法继续匹配二级路由
Loading...