一、NavLink
<NavLink activeClassName="demo" className="list-group-item" to="/about">About</NavLink> <NavLink activeClassName="demo" className="list-group-item" to="/home">Home</NavLink>
二、Switch的使用
1 {/* 註冊路由 */} 2 <Switch> 3 <Route path="/about" component={About}/> 4 <Route path="/home" component={Home}/> 5 <Route path="/home" component={Test}/> 6 </Switch>
三、解決多級路徑刷新頁面樣式丟失的問題
四、路由的嚴格匹配與模糊匹配
1 <Switch> 2 <Route exact path="/about" component={About}/> 3 <Route exact path="/home" component={Home}/> 4 </Switch>
五、Redirect的使用
1 <Switch> 2 <Route path="/about" component={About}/> 3 <Route path="/home" component={Home}/> 4 <Redirect to="/about"/> 5 </Switch>
六、嵌套路由
1 import React, { Component } from 'react' 2 import MyNavLink from '../../components/MyNavLink' 3 import {Route,Switch,Redirect} from 'react-router-dom' 4 import News from './News' 5 import Message from './Message' 6 7 export default class Home extends Component { 8 render() { 9 return ( 10 <div> 11 <h3>我是Home的內容</h3> 12 <div> 13 <ul className="nav nav-tabs"> 14 <li> 15 <MyNavLink to="/home/news">News</MyNavLink> 16 </li> 17 <li> 18 <MyNavLink to="/home/message">Message</MyNavLink> 19 </li> 20 </ul> 21 {/* 註冊路由 */} 22 <Switch> 23 <Route path="/home/news" component={News}/> 24 <Route path="/home/message" component={Message}/> 25 <Redirect to="/home/news"/> 26 </Switch> 27 </div> 28 </div> 29 ) 30 } 31 }