Это может быть проблемой:
handleState = index => e => {
this.setState({ state: index });
};
должно быть
handleState = index => {
this.setState({ state: index });
};
, поскольку ранее handleState
- это функция, которая принимает индекс в качестве аргумента и возвращает другую функцию, которая ожидает другую Аргумент e
.
Теперь он просто берет индекс и обновляет состояние.
update
Вот как должна выглядеть ваша функция:
Const SampleA = props => {
const handlClick = (e) => {
props.handleState(e, 0);
props.history.push({
pathname: `/SampleB`
});
}
return(
<Button onClick={handleClick}>Go to B!</Button>
);
}
Теперь событие и индекс передаются в функцию handleState
, поэтому вы можете использовать их как:
handleState = (event, index) => {
console.log(event, index);
this.setState({ state: index });
};