router.js:
import React from 'react';
import {BrowserRouter,Route,Redirect,Switch} from 'react-router-dom';
import Home from './Home'
import List from './List'
import News from './News'
const RouterLink = ()=>(
<BrowserRouter>
<Switch>
<Route path='/' exact component={Home}></Route>
<Route path='/list' exact component={List}></Route>
<Route path='/news' exact component={News}></Route>
<Redirect to='/' />
</Switch>
</BrowserRouter>
)
export default RouterLink;
Home.js:
import React,{Component} from 'react'
import {Link} from 'react-router-dom'
class Home extends Component{
render () {
return (
<div>
<Link to='/'>首页</Link>
<Link to='/list'>列表</Link>
<Link to='/news'>新闻</Link>
<button onClick={this.toNews.bind(this)}>新闻</button>
</div>
)
}
toNews(){
this.props.history.push('/news');
}
}
export default Home;
News.js:
import React,{Component} from 'react'
class News extends Component{
render () {
return (
<div>
我是News组件
<button onClick={this.toGoBack.bind(this)}>返回上一页</button>
</div>
)
}
toGoBack(){
this.props.history.goBack();
}
}
export default News;