Existe uma diferença entre o componente ser "montado" e "re-renderizado"
Toda vez que o componente é re-renderizado, o seu console.log
é executado, mas isso não quer dizer que ele foi remontado.
Toda vez que o valor de "count" muda, o componente é remontado
^ Errado! Toda vez que o valor de "count" muda, o componente é re-renderizado, ele não remonta do zero
O state (count) não vai ser resetado para o valor inicial quando o componente re-renderiza.
Esse é o motivo inclusive de se utilizar o useState ao invés de simplesmente declarar uma variável solta dentro do componente. Pq código solto, fora dos hooks, vai executar toda vez que re-renderizar, resetando tal variável.
Estude e experimente o useEffect, ele vai te dizer quando o componente é montado ou desmontado.
useEffect(() => {
console.log('componente montado')
return () => {
console.log('componente desmontado')
}
}, [])
O que o react faz por baixo dos pano para que este comportamento não ocorra?
O que o react faz por baixo dos pano para que este comportamento não ocorra?
Isso eu não sei te responder pq nunca olhei dentro do código do react nesse nível