如何将 react-router useRouterHistory 与 redux-simple-router 结合起来
How to combine react-router useRouterHistory with redux-simple-router
我正在尝试将 react-router 2.0 与 redux-simple-router 一起使用,但我无法让它与查询解析一起使用。这是我从文档中得到的:
const appHistory = useRouterHistory({
parseQueryString: parse,
stringifyQueryString: stringify
})
但是,如果我像这样将历史记录传递给 redux-simple-router ...
syncReduxAndRouter(appHistory, store, (state) => state.router)
...我得到 history.listen is not a function
。直接从 react-router 使用 browserHistory 似乎可以很好地与 redux-simple-router 一起使用。为什么历史记录中缺少 listen()?我该如何解决这个问题?
自从我发布这篇文章后,react-router 文档已经更新:
import { useRouterHistory } from 'react-router'
import createBrowserHistory from 'history/lib/createBrowserHistory'
const createAppHistory = useRouterHistory(createBrowserHistory)
const appHistory = createAppHistory({
parseQueryString: parse,
stringifyQuery: stringify
})
<Router history={appHistory}/>
我正在尝试将 react-router 2.0 与 redux-simple-router 一起使用,但我无法让它与查询解析一起使用。这是我从文档中得到的:
const appHistory = useRouterHistory({
parseQueryString: parse,
stringifyQueryString: stringify
})
但是,如果我像这样将历史记录传递给 redux-simple-router ...
syncReduxAndRouter(appHistory, store, (state) => state.router)
...我得到 history.listen is not a function
。直接从 react-router 使用 browserHistory 似乎可以很好地与 redux-simple-router 一起使用。为什么历史记录中缺少 listen()?我该如何解决这个问题?
自从我发布这篇文章后,react-router 文档已经更新:
import { useRouterHistory } from 'react-router'
import createBrowserHistory from 'history/lib/createBrowserHistory'
const createAppHistory = useRouterHistory(createBrowserHistory)
const appHistory = createAppHistory({
parseQueryString: parse,
stringifyQuery: stringify
})
<Router history={appHistory}/>