DvaJS的Router以及路由跳转
作者:互联网
Route Components
Route Components是指 ./src/routes/ 目录下的文件,它们是 ./src/router.js 里匹配的 Component。
通过connect绑定数据
比如:
import { connect } from 'dva';
function App() {}
function mapStateToProps(state, ownProps) {
return {
users: state.users,
};
}
export default connect(mapStateToProps)(App);
然后在App里就有了dispatch和users两个属性。
Injected Props
Route Component会有额外的props用以获取路由信息。
- location
- params
- children
- 。。。
朋友们可以将this.props输出出来就知道多了哪些东西是用来干嘛的了。
基于 action 进行页面跳转
import { routerRedux } from 'dva/router';
// 在Effects里
yield put(routerRedux.push('/logout'));
// 在Effects外
dispatch(routerRedux.push('/logout'));
// 路由跳转时附加参数
routerRedux.push({
pathname: '/logout',
query: {
page: 2,
},
});
除push(location)外还有其他方法,请看笔者其他文章。
标签:DvaJS,users,Route,routerRedux,connect,跳转,push,Router 来源: https://blog.51cto.com/u_15275953/2924451