react-01

react路由参数获取

1
<Route path="/books/:id" component={BooksList}/>
1
2
3
4
render() {
console.log(this.props.params.id);
//...
}

react路由Histories

  • browserHistory(推荐使用)
    • 缺点, 超链接在新标签打开报错,要从根路径开始
    • 优点, 地址栏不会出现#, 组件加载不会渲染两次
  • hashHistory
    • 缺点, 组件加载会渲染两次
    • 优点, 兼容老版本浏览器
  • createMemoryHistory(服务器端渲染使用)

组件内外跳转

  • 内跳转

    1
    2
    3
    4
    5
    componentDidMount(){
    setTimeout(()=>{
    this.context.router.push('/home');
    },3000);
    }
  • 外跳转

1
2
3
4
5
6
7
8
9
10
//在引入的service里通过browserHistory来跳转
export default{
getData() {
setTimeout(()=>{
browserHistory.push('/home')
},3000)
},
//...
}