除了使用之外,
BrowserRouter您可以使用
Router带有自定义历史记录的
import { Router } from 'react-router'import createBrowserHistory from 'history/createBrowserHistory'export const history = createBrowserHistory()<Router history={history}> <App/></Router>
在这种情况下,您
history.push()会工作。使用BrowserRouter
history.push无效,因为创建新的
browserHistory无效,因为
<BrowserRouter>创建了自己的历史实例,并侦听该实例的更改。因此,其他实例将更改url,但不会更新
<BrowserRouter>。
创建自定义后
history,您可以将其导出,然后将其导入您的文件中,
action creator并使用它像
import { history } from '/path/to/index';const someAction = () => { return dispatch => { ApiCall().then((res) => { dispatch({type: 'SOME_CALL', payload: res }) history.push('/home'); }) }}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)