Em: const novoArrayNotas = [...this.state.notas, novaNota] Por que não funciona escrever: this.state.notas.append (novaNota)? Não consigo entender a diferença.
Em: const novoArrayNotas = [...this.state.notas, novaNota] Por que não funciona escrever: this.state.notas.append (novaNota)? Não consigo entender a diferença.
Na verdade se vc usar um this.state.notas.push(novaNota)
até funciona, mas o componente não é renderizado novamente, então vc não vê o resultado na tela (mas se vc der um console.log(this.state.notas)
vc vai ver que a nova nota foi adicionada no array).
Pelo que vi na documentação oficial do React, quando vc dá um setState()
, o React sabe que o state mudou, e chama o método render()
de novo, fazendo com que a alteração apareça na tela.
Ah, e sobre o append(): Acho que ele só funciona quando se está mexendo com elementos diretamente na DOM