Souhlas s cookies pro jednostránkové aplikace (React, Vue, Angular)
Proč jsou SPA pro souhlas s cookies problematické
Jednostránkové aplikace se načtou jednou a navigaci zpracovávají na straně klienta. Neexistují žádná znovunačtení stránky, která by znovu spustila kontroly souhlasu. Skripty třetích stran načtené v index.html se spouštějí dříve, než se objeví jakékoli rozhraní pro souhlas.
Časté chyby u SPA
- Načítání Google Analytics v index.html před udělením souhlasu
- Opomenutí opětovné kontroly stavu souhlasu při změnách tras
- Ztráta stavu souhlasu při opětovném vykreslení aplikace
- Spouštění sledovacích událostí v životním cyklu komponent bez bran souhlasu
Správná implementace
- Načtěte do HTML hlavičky pouze skript CMP — nic jiného
- Podmíněně načtěte skripty třetích stran až po udělení souhlasu
- Použijte JavaScript API od CMP pro programovou kontrolu stavu souhlasu
- Podmíněte volání analytiky a marketingu kontrolami souhlasu ve svých komponentách
Tipy pro konkrétní frameworky
React
Použijte poskytovatele kontextu souhlasu. Kontrolujte stav souhlasu v useEffect hoocích před inicializací trackerů.
Vue
Vytvořte plugin pro souhlas. Použijte router guardy pro ověření stavu souhlasu při navigaci.
Angular
Použijte službu souhlasu injektovanou přes DI. Kontrolujte souhlas v route guardech a při inicializaci komponent.
FlexyConsent s SPA
Přístup FlexyConsent založený na jednom skriptu funguje s jakýmkoli frameworkem. Načítá se asynchronně, spravuje stav souhlasu prostřednictvím cookies a poskytuje JavaScript API pro programové kontroly souhlasu. Není potřeba žádné SDK specifické pro framework.