参考网址: https://reacttraining.com/react-router/web/api/NavLink
Router与Route
import {HashRouter as Router,Route} from "react-router-dom";
{}
<Router>
{}
<Route path="/home" component={Home}></Route>
<Route path="/shop" component={Shop}></Route>
{}
<Route path="/demo" render={()=> <div>hello Demo</div>}></Route>
<Route path="/demo" render={()=> <Demo/>}></Route>
</Router>
exact与strict
import {HashRouter as Router,Route} from "react-router-dom";
{}
{}
{}
<Route exact strict path="/mine" component={Mine}></Route>
Switch
import {HashRouter as Router,Switch,Route} from "react-router-dom";
{}
<Router>
<Switch>
<Route path="/home" component={Home}></Route>
<Route path="/shop" component={Shop}></Route>
</Switch>
</Router>
自定义404访问页面
import {HashRouter as Router,Switch,Route} from "react-router-dom";
{}
<Switch>
<Route path="/home" component={Home}></Route>
<Route path="/shop" component={Shop}></Route>
<Route component={NotFound}></Route>
</Switch>
link与navlink
import {Link, NavLink} from "react-router-dom";
{}
<Link to="/home">Home</Link>
{}
{}
<NavLink to="/home" activeClassName="select">Home</NavLink>
路由传参
import {Switch, Route , Link, NavLink} from "react-router-dom";
<Router>
<Switch>
{}
{}
<Route path="/mine/ucnter/:id?" component={UCenter}></Route>
{}
<Route path="/demo" render={()=> <Demo name="你好" />}></Route>
</Switch>
</Router>
{}
<NavLink
to={{
pathname: 'select',
search: '?id=007',
state: {aaa: '12213'}
}}>Select
</NavLink>
路由重定向
import {Redirect} from "react-router-dom";
{}
<Redirect from='/hellomine' to='/mine'></Redirect>
handleClick = () =>{
const {isLogin} = this.state
console.log(this.props);
if (!isLogin) {
this.props.history.push('/home')
}
}