react-router v3和v4区别

Posted shenwh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react-router v3和v4区别相关的知识,希望对你有一定的参考价值。

1.默认路由

v3 <IndexRoute>

v4 <Route exact>

2.授权路由

import Redirect from ‘react-router-dom‘

< Redirect to="home"> 组件
它会始终执行浏览器重定向,当处于中时,只有其他路由不匹配的情况下,才会渲染重定向组件;

3.包容性路由

<header>
<Route path="/user" component={usertop}/>
<Route path="/user" component={userbottom}/>
<Route path="/user/list" component={userlist}/>
</header>

V3路由有排他性,即一次只能渲染一条,V4中上面的会将匹配的路由的组件都渲染,v4使用来进行路由排他。例上面,匹配路由 /user 时, usertop userbottom 与 userlist 会同时渲染;

路由的战略性布局(即使用排他路由策略)

<header>
<switch>
<Route path="/" exact component={home}/>
<Route path="/user" component={usertop}/>
<Route path="/user/list" component={userlist}/>
<Redirect to="/" />
</switch>
</header>

这样的即使没有home没有exact,它也会被渲染因为Redirect;

路由/user 时,匹配如下:
匹配了/user,不匹配/user/list(因为这里使用了switch排他路由)

以上是关于react-router v3和v4区别的主要内容,如果未能解决你的问题,请参考以下文章

react-router 从 v3 版本升到 v4 版本,升级小记

浅入浅出 react-router v4 实现嵌套路由

webpack v3 结合 react-router v4 做 dynamic import — 按需加载(懒加载)

React-router v4教程

React-Router V4 - <Match> 和 <Route> 之间的区别

react-router简单使用方法