我在重做Redux DevTools中的位置更改操作时遇到问题。我是Redux的新手,我正在尝试使用最新的软件包react-redux 5.0.4,react-router 4.1.1,react-router-redux 5.0.0-alpha创建一个完整的Redux应用程序。 4
经过大量的努力,商店通过连接传递给Provider,路由器与ConnectedRouter正确连接(官方doc),路由更改工作,Redux DevTools上显示的操作,但是如果我重播它们,位置保持不变(最后一个位置不会改变),所以如果你从/ login / test转换到/忘记密码并按重放,屏幕不会呈现/ login / test然后改变,它只会留在/忘记密码。
附加代码和Redux DevTools状态导出。如果有人对原因有任何想法,请提前告知我,谢谢!
import React from 'react';
import CompLogin from '/client/Components/User/Login/login.jsx';
import { routerActions, push } from 'react-router-redux';
import { connect } from 'react-redux';
class Login extends React.Component {
constructor (props) {
super(props);
this.testChange = this.testChange.bind(this);
}
testChange(event) {
event.preventDefault();
this.props.goToPath('/forgot-password');
}
render() {
return (
<div className="homepage">
<p onClick={this.testChange}>here</p>
<CompLogin match={this.props.match}/>
</div>
)
}
}
const mapStateToProps = (state) => {
return {
}
}
const mapDispatchToProps = (dispatch) => {
return {
goToPath: (location) => {
dispatch(routerActions.push(location));
}
}
}
Login = connect(
mapStateToProps,
mapDispatchToProps
)(Login);
export default Login;
&#13;
{
"payload": "[{\"type\":\"@@router/LOCATION_CHANGE\",\"payload\":{\"pathname\":\"/login/dsa\",\"search\":\"\",\"hash\":\"\"}},{\"type\":\"@@redux-form/REGISTER_FIELD\",\"meta\":{\"form\":\"CompLogin\"},\"payload\":{\"name\":\"emailAddress\",\"type\":\"Field\"}},{\"type\":\"@@redux-form/REGISTER_FIELD\",\"meta\":{\"form\":\"CompLogin\"},\"payload\":{\"name\":\"password\",\"type\":\"Field\"}},{\"type\":\"@@redux-form/FOCUS\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"emailAddress\"}},{\"type\":\"@@redux-form/CHANGE\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"emailAddress\",\"touch\":false,\"persistentSubmitErrors\":false},\"payload\":\"d\"},{\"type\":\"@@redux-form/CHANGE\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"emailAddress\",\"touch\":false,\"persistentSubmitErrors\":false},\"payload\":\"ds\"},{\"type\":\"@@redux-form/CHANGE\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"emailAddress\",\"touch\":false,\"persistentSubmitErrors\":false},\"payload\":\"dsa\"},{\"type\":\"@@redux-form/BLUR\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"emailAddress\",\"touch\":true},\"payload\":\"dsa\"},{\"type\":\"@@redux-form/FOCUS\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"password\"}},{\"type\":\"@@redux-form/CHANGE\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"password\",\"touch\":false,\"persistentSubmitErrors\":false},\"payload\":\"d\"},{\"type\":\"@@redux-form/CHANGE\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"password\",\"touch\":false,\"persistentSubmitErrors\":false},\"payload\":\"ds\"},{\"type\":\"@@redux-form/CHANGE\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"password\",\"touch\":false,\"persistentSubmitErrors\":false},\"payload\":\"dsa\"},{\"type\":\"@@redux-form/BLUR\",\"meta\":{\"form\":\"CompLogin\",\"field\":\"password\",\"touch\":true},\"payload\":\"dsa\"},{\"type\":\"@@router/LOCATION_CHANGE\",\"payload\":{\"pathname\":\"/forgot-password\",\"search\":\"\",\"hash\":\"\",\"key\":\"26xvm2\"}},{\"type\":\"@@redux-form/DESTROY\",\"meta\":{\"form\":[\"CompLogin\"]}},{\"type\":\"@@redux-form/REGISTER_FIELD\",\"meta\":{\"form\":\"CompForgotPassword\"},\"payload\":{\"name\":\"emailAddress\",\"type\":\"Field\"}},{\"type\":\"@@router/LOCATION_CHANGE\",\"payload\":{\"pathname\":\"/forgot-password\",\"search\":\"\",\"hash\":\"\",\"key\":\"3jad4s\"}},{\"type\":\"@@redux-form/DESTROY\",\"meta\":{\"form\":[\"CompLogin\"]}},{\"type\":\"@@redux-form/REGISTER_FIELD\",\"meta\":{\"form\":\"CompForgotPassword\"},\"payload\":{\"name\":\"emailAddress\",\"type\":\"Field\"}}]"
}
&#13;