Ich habe Probleme mit dem Zugriff und Weitergabe von Router-Parameter zur Dispatch-Funktion. Ich weiß nicht, ob ich etwas verpasse, aber kann mir jemand in die richtige Richtung zeigen. Ist es überhaupt möglich, so etwas zu tun, wenn nicht, wie kann ich diese Information weitergeben, die ich brauche? Hier ist der relevante Code:Pass Reagieren Router Params zu versenden
export function verifyUser(token) { //here i want to have params form react router object
return dispatch => {
dispatch(isLoading(true));
axios.get('/auth/verify/' + token)
.then(response => {
dispatch(_verifyUserSuccess(response.data.message));
dispatch(isLoading(false));
// browserHistory.push('/signin');
})
.catch(error => {
if (error.response) {
dispatch(_verifyUserFailure(error.response.data.message));
dispatch(isLoading(false));
}
else {
// Something happened in setting up the request that triggered an Error
console.log(error.message);
}
});
};
}
import React, {Component} from 'react';
import VerificationForm from './VerificationForm';
import {connect} from 'react-redux';
import { verifyUser } from '../../actions/actionVerify';
import { Grid, Row, Col } from 'react-bootstrap';
class VerificationPage extends Component {
constructor(props) {
super(props);
console.log(this.props);
const { params } = this.props;
}
render() {
return (
<Grid>
<Row>
<Col sm={6} smPush={3}>
<VerificationForm onSave={this.props.onSave} message={this.props.message} isLoading={this.props.isLoading}/>
</Col>
</Row>
</Grid>
);
}
}
function mapStateToProps(state) {
return {
message: state.verify.message,
isLoading: state.form.isLoading
};
}
function mapDispatchToProps(dispatch) {
return {
onSave:() => dispatch(verifyUser(this.props.params.token)) //here when i pass params.token i got undefined when action is called
};
}
export default connect(mapStateToProps, mapDispatchToProps)(VerificationPage);
<Route path="/" component={App}>
<IndexRoute component={Greetings}/>
<Route path="/signup" component={SignupPage}/>
<Route path="/signin" component={SigninPage}/>
<Route path="/verify/:token" component={VerificationPage} />
</Route>
Sebestian Dank millionenfach verwendet wird, wie ein Werk Charme –