Reagir setState não atualizando imediatamente
Estou trabalhando em um aplicativo de tarefas. Esta é uma versão muito simplificada do código incorreto. Eu tenho uma caixa de seleção:
<p><input type="checkbox" name="area" checked={this.state.Pencil} onChange={this.checkPencil}/> Writing Item </p>
Aqui está a função que chama a caixa de seleção:
checkPencil(){
this.setState({
pencil:!this.state.pencil,
});
this.props.updateItem(this.state);
}
updateItem é uma função mapeada para envio ao redux
function mapDispatchToProps(dispatch){
return bindActionCreators({ updateItem}, dispatch);
}
Meu problema é que quando eu chamo a ação updateItem e console.log o estado, ele está sempre 1 passo atrás. Se a caixa de seleção estiver desmarcada e não for verdadeira, ainda recebo o estado de verdadeiro sendo passado para a função updateItem. Preciso chamar outra função para forçar a atualização do estado?