У меня есть метод handleSubmit:
state = {
code: null,
participant: {},
participantNotFound: false,
};
handleSubmit = (event) => {
event.preventDefault();
const {code} = this.state;
axios.get(`/api/participant/${code}`)
.then((response) => {
const participant = response.data.participant;
console.log(participant)
this.setState({participant})
})
.catch(() => this.setState({participantNotFound: true}));
console.log(this.state.participant) // THIS IS STILL EMPTY
};
Это срабатывает при отправке формы:
<form method="POST" onSubmit={this.handleSubmit}>
<div className="ui action input">
<input type="text" placeholder="Enter code" name="code"/>
<select className="ui compact selection dropdown" onChange={event => this.setState({selectedOption: event.target.value})}>
<option value="participate">Participate!</option>
<option value="check_status">Check status</option>
</select>
<button>Submit</button>
</div>
</form>
Я поставил console.log, и он выводит участника правильно, но он не устанавливает участника на участника, которого я получаю из моего ответа.
После этого у меня есть другой код, который проверяет, существует ли участник или нет, но он не работает, потому что участник никогда не устанавливается.
Почему это?