
Supabase Realtime: Atualizando Pedidos Sem F5
João Santos |
Como atualizar um painel administrativo automaticamente quando novos pedidos são criados.
Supabase Realtime: Atualizando Pedidos Sem F5
Em um sistema de pedidos, o administrador precisa visualizar novos registros rapidamente.
No início, o painel só mostrava um novo pedido depois que a página era atualizada manualmente.
Uma solução simples seria executar uma nova busca a cada poucos segundos. Porém, isso cria consultas mesmo quando nada mudou.
Com o Supabase Realtime, a aplicação pode escutar alterações diretamente na tabela.
O componente fica inscrito em eventos como:
INSERTUPDATEDELETE
Quando um novo pedido é criado, o evento é recebido e o estado da interface é atualizado.
const channel = supabase
.channel("pedidos")
.on(
"postgres_changes",
{
event: "INSERT",
schema: "public",
table: "pedidos",
},
(payload) => {
setPedidos((atuais) => [
payload.new,
...atuais,
]);
}
)
.subscribe();