如果您想通过Redux操作发布导航事件,docs会告诉您使用routerMiddleware
。
要调用routerMiddlware()
,您需要为其提供History
对象,并且尚未创建Redux存储(因为在存储构建期间应用了Redux中间件)。
然而tutorial example显示您应该调用syncHistoryWithStore()
来“包裹”您的历史对象。
这会产生鸡蛋问题,因为要调用syncHistoryWithStore()
,您需要一个Store
对象,但为了获得Store
个对象,您需要调用{带有routerMiddlware()
对象的{1}}。
我通过给History
一个非包装的历史对象,创建商店然后像这样更新历史来解决这个问题:
routerMiddlware()
然而,由于我对代码库不够熟悉,我不确定这是否存在问题和/或是否存在其他方式。
这是怎么做的?