Durante a aula o instrutor precisa setar o novo estado das categorias e faz algo assim:
novasCategorias(categorias) {
this.setState({...this.state, categorias});
}
No entanto, vendo o código imaginei que poderia ser feita da seguinte forma:
novasCategorias(categorias) {
this.setState({categorias: categorias});
}
Testando aqui, aparentemente funcionou corretamente essa segunda estratégia. O erro poderia vir caso houvesse mais um estado, então adicionei ao state objeto com nome e realizando teste, essa abordagem não sobrescreveu nenhuma outra propriedade dentro do meu state. Dai fiquei com dúvida em qual seria o erro de utilizar assim. Achei o uso do spread operator mais verboso. Poderiam me apontar motivos para preferir usar a primeira opção ?