Router

Route Components

Route Components 是指 ./src/routes/ 目录下的文件,他们是 ./src/router.js 里匹配的 Component。

通过 connect 绑定数据

比如:

  1. import { connect } from 'dva';
  2. function App() {}
  3. function mapStateToProps(state, ownProps) {
  4. return {
  5. users: state.users,
  6. };
  7. }
  8. export default connect(mapStateToProps)(App);

然后在 App 里就有了 dispatchusers 两个属性。

Injected Props (e.g. location)

Route Component 会有额外的 props 用以获取路由信息。

基于 action 进行页面跳转

  1. import { routerRedux } from 'dva/router';
  2. // Inside Effects
  3. yield put(routerRedux.push('/logout'));
  4. // Outside Effects
  5. dispatch(routerRedux.push('/logout'));
  6. // With query
  7. routerRedux.push({
  8. pathname: '/logout',
  9. query: {
  10. page: 2,
  11. },
  12. });

push(location) 外还有更多方法,详见 react-router-redux