Cookie consent em React: um banner que realmente bloqueia scripts

Banner de consentimento de cookies em React

Cookie consent em React: um banner que controla os scripts | We.Inc

Crie um banner de consentimento de cookies em React: salve a escolha, carregue analytics só depois do Aceitar e envie atualizações do Consent Mode. Mais as props do pacote react-cookie-consent.

Mantenha a escolha do visitante no state do React, salve em um cookie próprio ou no armazenamento do navegador e só renderize scripts de analytics ou anúncios quando a categoria correspondente for autorizada. Um hook pequeno e um componente de banner resolvem. Se preferir um pacote, o react-cookie-consent oferece um banner pronto com props para botão de recusa, nome do cookie e validade.

Duas formas de adicionar consentimento a um site em React

A parte difícil de um banner de consentimento não é a caixa na tela, é garantir que nada não essencial rode antes de o visitante dizer sim. Em React isso é um problema de state: uma única fonte da verdade para a escolha e componentes que a leem antes de injetar uma tag script. A demo ao vivo abaixo faz exatamente isso, para você ver o carregador de analytics ficar desligado até aceitar.

Perguntas frequentes

O react-cookie-consent bloqueia scripts por mim?

Não. O README descreve um banner que salva a resposta do visitante em um cookie e chama onAccept ou onDecline. Carregar ou pular o seu analytics continua sendo tarefa sua, por exemplo verificando getCookieConsentValue antes de adicionar o script.

Como adiciono um botão de recusa ao react-cookie-consent?

Defina a prop enableDeclineButton; ela é false por padrão. O texto do botão é I decline por padrão e pode ser trocado com declineButtonText, e onDecline roda quando ele é clicado.

Como deixo os visitantes mudarem de ideia?

Com o seu próprio hook, apague o valor salvo e o banner volta. Com o pacote, chame resetCookieConsentValue, passando o mesmo nome de cookie que você deu ao banner se tiver mudado o padrão.

Devo salvar o consentimento em um cookie ou no armazenamento do navegador?

Os dois funcionam no navegador. Um cookie também pode ser lido pelo seu servidor, o que ajuda se o servidor decide quais tags imprimir. O armazenamento do navegador mantém o valor fora de cada requisição. Ambos são permitidos para lembrar a própria escolha.

Onde ficam as chamadas do Consent Mode no React?

Coloque o default de consentimento do gtag no head do HTML antes de qualquer tag do Google, fora do React, para que rode primeiro. Chame gtag('consent', 'update', ...) a partir do handler de Aceitar dentro do React.

Por que bloquear é melhor que esconder

Testando seu banner

Fazer você mesmo: hook, banner e script controlado

Três peças pequenas. Não usam nenhuma biblioteca, rodam em qualquer app React 18 ou 19 e correspondem à demo acima.

Hook useConsent

Lê a escolha salva uma vez no cliente e salva e transmite cada mudança.

Componente ConsentBanner

Aceitar e Recusar ficam lado a lado; as caixas de categoria começam desmarcadas.

Carregar um script só depois do consentimento

A tag script só é criada quando a categoria é autorizada, então uma recusa significa que ela nunca existe.

Usando o pacote react-cookie-consent

Instale com npm install react-cookie-consent. Estas são as props e funções auxiliares que o README documenta, com seus valores padrão, em outubro de 2026.

Props e valores padrão do react-cookie-consent

Banner com botão de recusa

Aceitar carrega o analytics; Recusar não carrega nada opcional. A verificação no primeiro carregamento cobre quem volta ao site.

Demo ao vivo: um banner de consentimento que controla os scripts

Site de exemplo

Usamos cookies de analytics e anúncios só se você concordar.

Aceitar tudo

Recusar tudo

Escolher

Salvar escolhas

Analytics

Publicidade

Necessários (sempre ativos)

O que seria carregado

{c}: script adicionado

{c}: bloqueado

Nenhuma escolha ainda, então nada opcional é carregado.

Configurações de cookies

Atualização do Consent Mode enviada

Nenhuma ainda.

A demo lembra sua escolha só neste navegador. Nada é enviado para lugar nenhum.

Comece grátis · Sem cartão de crédito

Relacionados: Guias

Produto

Para quem é

Recursos

Recursos

Empresa

Mapa do site