需求是在request.js
里面通过后端返回的code
(不是http状态码,是自定义的)检测登录状态,尝试了以下两种方式,虽然能实现跳转,但是登录之后跳转到列表页面不能触发model
里面的history.listen()
第一种
history.js
import createHistory from 'history/createHashHistory'
const history = createHistory()
export default history
index.js
const app = dva({
history
})
使用history.push('/login')
第二种
import { routerRedux } from 'dva/router'
const { dispatch } = app._store
dispatch(routerRedux.push('/login'))
这两种方式能跳转,但是都会另外创建一份history,所以listen()
会失效。
版本
"dva": "^2.1.0",
"react": "^16.2.0",
求助
如何解决这个问题?或者针对用户登录失效跳转重新登录有没有更好的方式处理?