路由组件与一般组件区别:
- 写法不同:一般组件<Demo />; 路由组件<Route path='/demo' component={Demo} />
- 存放位置不同:一般组件为components; 路由组件存放于pages
- 接收到的props不同:一般组件:组件标签中传递什么才能收到什么;路由组件:接收到三个固定的属性
解决多级路径刷新页面样式丢失的问题:
路由的模糊匹配和严格匹配:
Redirect的使用
向路由组件传递参数:
(1)params参数
(2) search参数
(3) state参数 (pathname)
编程式路由导航
withRouter函数
可以加工一般组件,让一般组件具备路由组件所特有的API(history, location, match)
BrowserRouter和HashRouter的区别