Я видел метод React setState с обратным вызовом, что означает, что обратный вызов будет выполнен после того, как будет гарантировано, что новое состояние было установлено и компонент был перерисован, например, в следующем примере:
this.setState({value: event.target.value}, function () {
console.log(this.state.value);
}); //new state will be logged to console after it was set and rendered
Теперь, если я не совсем не прав, то же самое можно реализовать с помощью async.
Функции:
async someFunction(){
await this.setState({value: event.target.value});
console.log(this.state.value);
}
Мой вопрос сейчас таков: повлияет ли это на производительность, если я использую несколько вызовов await setState в одной функции? выполнит ли он повторную визуализацию после каждого вызова setState и будет ждать завершения процесса рендеринга, а затем выполнит вызов netSaait setState и т. д. и, возможно, создаст проблемы с производительностью? например:
async someFunction(){
await this.setState({value: event.target.value});
let result = await someAPICall();
await this.setState({resultApiCall: result});
await.....
}