Implémentation avec SvelteKit
Intégrez Kameleoon Web Experimentation avec une protection anti-flicker et exécutez le scriptengine.js après l’hydratation SvelteKit. Cette configuration garantit des performances optimales, une stabilité visuelle et la compatibilité avec le cycle de vie de rendu de SvelteKit.
Accéder à l’intégration SvelteKit prête pour la production
Accédez au dépôt prêt pour la production ici : https://github.com/Kameleoon/setup-engine-sveltekit Avant de commencer, remplacez la valeur sitecode danssrc/lib/integrations/Kameleoon/sitecode.ts.
Domaine du script
Le domaine de votre script Kameleoon peut différer entre les projets. Selon la date de création de votre projet, vos scripts peuvent résider surkameleoon.eu ou kameleoon.io. Utilisez toujours le domaine affiché pour votre projet dans l’application Kameleoon.
Vue d’ensemble
- Préchargez le moteur Kameleoon : Assurez-vous que le navigateur télécharge et met en cache le moteur tôt.
- Appliquez le CSS anti-flicker : Masquez le contenu jusqu’à ce que le moteur soit prêt afin d’éviter les décalages de mise en page.
- Exécutez le moteur après l’hydratation : Exécutez le script après l’hydratation SvelteKit pour éviter les désynchronisations.
Composants
L’intégration utilise deux composants pour assurer un chargement fluide et empêcher le clignotement pendant l’hydratation.1. Composant serveur
Le composant :- Injecte le CSS anti-flicker pendant le SSR pour empêcher les flashs d’interface.
- Précharge le fichier
engine.jsafin que le téléchargement commence dès que possible.
KameleoonHead.svelte sur GitHub.
2. Composant client
Le composant :- Supprime les styles anti-flicker après l’hydratation.
- Charge dynamiquement le script
engine.jsde Kameleoon. - Garantit que le script se charge sans bloquer le rendu.
KameleoonHydrationReady.svelte sur GitHub.
Le timeout anti-flicker par défaut est de
750 ms. Ajustez kameleoonLoadingTimeout si nécessaire.Utilisation dans RootLayout
Combinez les deux composants dans votre layout :layout.svelte sur GitHub.
Points clés
- Protéger contre le clignotement en SSR.
- Utiliser une exécution de script consciente de l’hydratation.
- Charger le moteur de manière asynchrone.
- Utiliser un timeout de secours pour la fiabilité.
- Éviter les scripts bloquants.
- Prendre en charge les layouts SvelteKit, le SSR et le routage côté client.