Hydration

Definição

Hydration é o processo em que o navegador recebe uma página HTML já renderizada pelo servidor (via SSR ou SSG) e a transforma em uma aplicação interativa ao executar o JavaScript associado.
Ou seja, o conteúdo já está visível ao usuário, e o JavaScript entra em ação para reativar os componentes, adicionando funcionalidades como eventos, estado e navegação.

Esse processo é comum em frameworks como React, Next.js, Vue e SvelteKit.

Objetivos da Hydration

  • Permitir que páginas pré-renderizadas se tornem interativas no navegador.
  • Combinar os benefícios do SSR ou SSG (conteúdo visível rapidamente e SEO) com interfaces ricas e dinâmicas.
  • Reaproveitar o HTML renderizado, evitando a reconstrução completa da interface.
  • Evitar flickering (piscadas visuais) e reprocessamentos desnecessários.

Exemplo conceitual

  1. O servidor gera e envia um HTML completo com conteúdo visível.
  2. O navegador exibe esse HTML imediatamente.
  3. O JavaScript da aplicação é carregado em segundo plano.
  4. O framework "conecta" os componentes interativos ao HTML existente.
  5. A página se torna responsiva a interações do usuário (cliques, navegação, formulários, etc.).

Esse processo difere do CSR puro, onde o HTML inicial é vazio ou mínimo, e todo o conteúdo é montado do zero via JavaScript.

Quando a Hydration acontece?

Hydration é ativada automaticamente quando se usa:

  • SSR com interatividade, como no Next.js com getServerSideProps.
  • SSG com componentes dinâmicos, como páginas estáticas geradas com getStaticProps.
  • Frameworks reativos com renderização híbrida, que combinam HTML estático e lógica reativa.

⚠️ A hydration pode impactar a performance se o bundle de JavaScript for muito grande ou carregado de forma ineficiente.

Estratégias de otimização

  • Hydration parcial: aplicar hydration apenas nos componentes que precisam.
  • Hydration progressiva: hidratar por prioridade ou por seção (ex: cabeçalho antes do rodapé).
  • Evitar rehydration: manter componentes puramente estáticos sem reativação desnecessária.

Relacionados

Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com