Zgoda na pliki cookie dla aplikacji jednostronicowych (React, Vue, Angular)
Dlaczego SPA są trudne dla zgody na pliki cookie
Aplikacje jednostronicowe ładują się raz i obsługują nawigację po stronie klienta. Nie ma przeładowań strony, które ponownie uruchomiłyby sprawdzanie zgody. Skrypty firm trzecich załadowane w index.html uruchamiają się, zanim pojawi się jakikolwiek interfejs zgody.
Częste błędy w SPA
- Ładowanie Google Analytics w index.html przed uzyskaniem zgody
- Brak ponownego sprawdzania stanu zgody przy zmianach tras
- Utrata stanu zgody przy ponownym renderowaniu aplikacji
- Uruchamianie zdarzeń śledzenia w cyklu życia komponentu bez bramek zgody
Prawidłowa implementacja
- Załaduj w HTML head tylko skrypt CMP — nic więcej
- Ładuj skrypty firm trzecich warunkowo, dopiero po uzyskaniu zgody
- Użyj JavaScript API CMP do programowego sprawdzania stanu zgody
- Ogranicz wywołania analityczne i marketingowe za sprawdzeniami zgody w swoich komponentach
Wskazówki dla poszczególnych frameworków
React
Użyj dostawcy kontekstu zgody. Sprawdzaj stan zgody w hookach useEffect przed inicjalizacją trackerów.
Vue
Utwórz wtyczkę zgody. Użyj strażników routera do weryfikacji stanu zgody podczas nawigacji.
Angular
Użyj serwisu zgody wstrzykiwanego przez DI. Sprawdzaj zgodę w strażnikach tras i przy inicjalizacji komponentów.
FlexyConsent z SPA
Podejście jednego skryptu FlexyConsent działa z każdym frameworkiem. Ładuje się asynchronicznie, zarządza stanem zgody przez pliki cookie i udostępnia JavaScript API do programowego sprawdzania zgody. Nie jest potrzebne SDK specyficzne dla frameworka.