调度在 react-redux connect() 的 mergeProps 参数中定义的推送动作会调度 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 操作?此时,只有 connected-react-router 中间件和 redux 存储正在更新,但没有实际的页面更改。