Arrêtez le traqueur d'analyses détournant chaque lien mais à la maison

Performancekamo-marketing
Expédié
19 août 2026 à 16:19 UTC
Auteur
Kamo
Commite
f321857

Chaque page, à l'exception de la page d'accueil, a pris des secondes pour s'ouvrir, et la raison n'a jamais été dans le chemin de navigation de cette application: les prérendisent le serveur, les charges utiles de pré-réverrouillage sont complet (78 chunk refs, '57 KB, 68 ms), chaque href interne est un site-a-a-t-aest «Lien» et la sonde déployée a mesuré les navigations souples INTO la page d'accueil à 111-194 ms. Ce que la sonde n'a jamais enregistré était une navigation en douceur dans quoi que ce soit Simultanément, sept clics consécutifs sont revenus en tant que charge de documents froids. L'analyse le fait. Son suiveur installe un écouteur de clic de phase de capture et, pour tout 'a' portant l'analyse de données-événement, les actions e.préventDefault() // la navigation client "Lien" est annulée attendre la voie(...) // POST /api/envoyer emplacement.href et href // charge complète du document Donc l'attribut convertit silencieusement une navigation client en "attendre pour l'analyse, puis rechargement dur". Ici, la balise oblit sur une recherche géo-IP et prend 1,5-8 s (fixé séparément en kamo-analytics), au-dessus duquel le navigateur a ensuite jeté la page et a été réparé le numéro 1 MB de JS. Le lien Home et le logo étaient les deux seuls des liens internes dans l'en-tête sans l'attribut. C'est l'ensemble de "tout votre famille page sauf la page d'accueil". Remplace les 119 attributs de l'analyse de données par trackEvent() à partir de app/lib/analytics.ts, appelé onClick: même nom d'événement, même charge utile, et le L'envoi du suiveur est keepalive: vrai, donc une balise tirée sur le chemin hors du site encore se terminent. Rien n'est perdu, y compris les CTA sortants pour l'enregistrement/login, qui avait attendu lors de l'aller-retour avant de quitter la page. Garantie par (préconstruire, donc la construction de l'image et donc le déploiement échoue à une régression). L'interdiction est totale plutôt que les ancres uniquement: sur un bouton, l'attribut est inoffensif jusqu'à ce que quelqu'un le transforme en un «lien», et la défaillance est invisible dans le balisage, les types et la peluche parce que le comportement est injecté au moment de l'exécution par un script tiers.

Tous les changements

Comme ce que tu vois expédier ?

Chacune de ces mises à jour atterrit automatiquement dans votre espace de travail. Commencez gratuitement et regardez-le grandir semaine après semaine.

Commencez gratuitement pour toujoursPrix de visualisation