Interatividade com HTMX
useState
do Preact para gerenciar o estado do
contador e o evento onClick
para atualizar o contador quando os botões são
clicados.
useState
nem o evento onClick
. Ao
usar HTMX, precisamos de uma rota para cada estado da UI, então faremos uma
solicitação ao servidor para atualizar o estado do contador.
É aí que o hook useSection
é útil. Este
hook cria automaticamente rotas para renderizar seus estados de UI sem exigir
que os desenvolvedores lidem manualmente com o roteamento.
Vamos ver o que muda na versão HTMX:
hx-get
com o
hook useSection
. O atributo hx-get
faz uma solicitação GET para a URL
retornada pelo hook useSection
. A resposta é um novo HTML com o novo estado da
UI do contador. O atributo hx-target
define o elemento alvo onde a resposta
será inserida, neste caso, a seção mais próxima do botão. O atributo hx-swap
define como a resposta será inserida, neste caso, substituindo todo o elemento
da seção pela resposta.
Para ilustrar a diferença entre as versões Preact e HTMX, vamos usá-las e ver
como se comportam na aba de Network das ferramentas de desenvolvedor do
navegador.
Enquanto a versão Preact atualiza o estado do contador localmente, a versão HTMX
faz uma requisição ao servidor para atualizar o estado do contador.