Consentement cookies React : un bandeau qui bloque vraiment les scripts

Bandeau de consentement cookies React

Consentement cookies React : un bandeau qui bloque les scripts | We.Inc

Créez un bandeau de consentement aux cookies en React : enregistrez le choix, chargez l'analytics seulement après Accepter, envoyez les mises à jour Consent Mode. Avec les props du package react-cookie-consent.

Gardez le choix du visiteur dans le state React, enregistrez-le dans un cookie first-party ou dans le stockage du navigateur, et n'affichez les scripts d'analytics ou de publicité que lorsque la catégorie correspondante est acceptée. Un petit hook et un composant de bandeau suffisent. Si vous préférez un package, react-cookie-consent fournit un bandeau prêt à l'emploi avec des props pour les boutons de refus, le nom du cookie et son expiration.

Deux façons d'ajouter le consentement à un site React

Le plus difficile dans un bandeau de consentement n'est pas la boîte à l'écran, c'est de s'assurer que rien de non essentiel ne s'exécute avant que le visiteur dise oui. En React, c'est un problème de state : une seule source de vérité pour le choix, et des composants qui la lisent avant d'injecter une balise script. La démo ci-dessous fait exactement cela : vous pouvez voir le chargeur d'analytics rester inactif jusqu'à ce que vous acceptiez.

Questions fréquentes

react-cookie-consent bloque-t-il les scripts à ma place ?

Non. Son README décrit un bandeau qui enregistre la réponse du visiteur dans un cookie et appelle onAccept ou onDecline. Charger ou non votre analytics reste votre travail, par exemple en vérifiant getCookieConsentValue avant d'ajouter le script.

Comment ajouter un bouton de refus à react-cookie-consent ?

Activez la prop enableDeclineButton ; elle vaut false par défaut. Le texte du bouton est I decline par défaut et se modifie avec declineButtonText, et onDecline s'exécute quand on clique dessus.

Comment permettre aux visiteurs de changer d'avis ?

Avec votre propre hook, effacez la valeur enregistrée et le bandeau revient. Avec le package, appelez resetCookieConsentValue en passant le même nom de cookie que celui donné au bandeau si vous avez changé la valeur par défaut.

Faut-il stocker le consentement dans un cookie ou dans le stockage du navigateur ?

Les deux fonctionnent côté navigateur. Un cookie peut aussi être lu par votre serveur, ce qui aide si c'est le serveur qui décide quelles balises afficher. Le stockage du navigateur évite d'envoyer la valeur à chaque requête. Les deux sont autorisés pour mémoriser le choix lui-même.

Où placer les appels Consent Mode dans React ?

Placez le gtag consent default dans le head HTML avant toute balise Google, en dehors de React, pour qu'il s'exécute en premier. Appelez gtag('consent', 'update', ...) depuis votre gestionnaire Accepter dans React.

Pourquoi bloquer vaut mieux que masquer

Tester votre bandeau

Le coder vous-même : hook, bandeau et script conditionnel

Trois petits éléments. Ils n'utilisent aucune bibliothèque, fonctionnent dans toute application React 18 ou 19, et correspondent à la démo ci-dessus.

Hook useConsent

Lit une fois le choix enregistré côté client, puis enregistre et diffuse chaque changement.

Composant ConsentBanner

Accepter et Refuser sont côte à côte ; les cases de catégorie sont décochées au départ.

Charger un script seulement après consentement

La balise script n'est créée que si la catégorie est acceptée : en cas de refus, elle n'existe jamais.

Utiliser le package react-cookie-consent

Installez-le avec npm install react-cookie-consent. Voici les props et fonctions utilitaires documentées dans son README, avec leurs valeurs par défaut, en octobre 2026.

Props et valeurs par défaut de react-cookie-consent

Bandeau avec bouton de refus

Accepter charge l'analytics ; Refuser ne charge rien d'optionnel. La vérification au premier chargement couvre les visiteurs qui reviennent.

Démo en direct : un bandeau de consentement qui bloque les scripts

Site fictif

Nous utilisons des cookies d'analytics et de publicité uniquement si vous êtes d'accord.

Tout accepter

Tout refuser

Choisir

Enregistrer mes choix

Analytics

Publicité

Nécessaires (toujours actifs)

Ce qui serait chargé

{c} : script ajouté

{c} : bloqué

Aucun choix pour l'instant, donc rien d'optionnel n'est chargé.

Paramètres des cookies

Mise à jour Consent Mode envoyée

Aucune pour l'instant.

La démo mémorise votre choix dans ce navigateur uniquement. Rien n'est envoyé nulle part.

Commencer gratuitement · Sans carte bancaire

Voir aussi: Guides

Produit

Pour qui

Fonctionnalités

Ressources

Entreprise

Plan du site