分派react-redux connect()的mergeProps参数中定义的push操作将分派redux操作,但不会触发url页面更改。我也将withRouter包装在redux容器周围,但似乎无济于事。
//connect.js
import { Component } from './Component';
import { withRouter } from 'react-router-dom';
import { connect } from 'react-redux';
import { push } from 'connected-react-router';
import { onFetch, onUpdate } from '../action-creators';
export default withRouter(connect(state => state,
{
onFetch,
onUpdate,
push
},
( state, actions ) => ({
...state,
onFetch: actions.onFetch,
onUpdate: index => {
actions.onUpdate( index );
actions.push( `/${ index }` );
}
})
)( Component ));
该如何使用create-react-router软件包触发实际的页面更新以及LOCATION_CNANGE redux操作?此时,仅更新了连接的反应路由器中间件和redux存储,而没有实际的页面更改。
答案 0 :(得分:0)
通过修改重定向“来自”道具修复了该问题。
根本原因:重定向放置在切换子路由列表的末尾,作为重新路由到主页的综合包。但是,所有请求(包括“ /”以外的有效请求)都转到了catchall重定向并重新路由到了主页。