J'utilise le code de suivi Google Analytics actuel et sur Firefox 59, j'obtiens cette erreur dans la console:
code inaccessible après l'instruction return
Sur ce javascript: https://www.googletagmanager.com/gtag/js?id=UA-my-tracking-code:formatted
Étant donné que ce problème ne semble pas être googleable, il semble donc que d'autres n'aient pas ce problème, je suppose que c'est moi qui fais quelque chose de mal. Mais qu'est-ce que cela pourrait être?
Je mets l'extrait dans <head>
, comme le disent les docs:
<!DOCTYPE html>
<html>
<head>
<title>some title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-my-tracking-code"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.Push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-my-tracking-code');
</script>
</head>
<body>
blah blah
</body>
</html>
C'est pas votre faute. Si vous améliorez le code avec Firefox, vous pouvez le trouver ici:
Gc = function (a, b, c) {
var d = a.split('.');
var e = function (a, b) {
for (var c = 0; void 0 !== a && c < d.length; c++) {
if (null === a) return !1;
a = a[d[c]]
}
return void 0 !== a || 1 < c ? a : b.length ? e(Hc(b.pop()), b) : Ic(d)
};
return e(Cc.eventModel, [ // <= True return value
b,
c
]);
return Ic(d) // <= This can never be reached!
},
Pour embellir le code:
{}
En bas à gauche de ce panneau pour le raffiner. Cependant la référence sera perdue.Firefox pointe correctement le bogue, la fonction Ic(d)
ne sera jamais atteinte puisque la fonction revient plus tôt. Cela ressemble à un bogue de Google Tag Manager, mais sans inspecter le code d'origine, nous ne pouvons pas dire la gravité.
Mon TOC ne le permettra pas. Les avertissements sont aussi mauvais que des erreurs dans mon cerveau ... lol
La réponse fournie par @Me - m'a amené à effectuer les opérations suivantes:
<script async src="https://www.googletagmanager.com/gtag/js?id={Google Analytics Id here}"></script>
tag et récupérer une copie du JavaScript.L'avertissement a disparu, et jusqu'à présent, tout semble fonctionner - aucune erreur/alerte supplémentaire ou nouvelle dans la console et les données Analytics/Tracking ne semblent toujours passer.
Ce n'est clairement pas une solution idéale - je devrai continuer à surveiller cela jusqu'à ce que a) Google corrige leur code (ce qui, incidemment, omet les points-virgules partout - je doute que cela soit proche de passer un Linter) ou b ) Google apporte d'autres modifications au code, provoquant la rupture du mien ou l'arrêt de la communication de mes analyses.
Le problème ne se produit pas avec toutes les versions du code de suivi.
Cet extrait de code, utilisant gtag
, provoque le unreachable code after return statement
avertissements (dans Firefox):
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXX-YY"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.Push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-XXXXXX-YY');
</script>
Source: la section Admin de Google Analytics: Admin › Tracking Info › Tracking Code
, dernière mise à jour Dieu sait quand.
Cet extrait de code, utilisant analytics.js
, ne déclenche pas l'erreur:
<script>
window.ga=window.ga||function(){(ga.q=ga.q||[]).Push(arguments)};ga.l=+new Date;
ga('create', 'UA-XXXXXX-YY', 'auto');
ga('send', 'pageview');
</script>
<script async src='https://www.google-analytics.com/analytics.js'></script>
Tiré de la documentation officielle: Ajout d'analytics.js à votre site (deuxième exemple de code), "Dernière mise à jour le 30 juillet 2018".
N'oubliez pas de mettre à jour XXXXXX-YY
avec votre propre ID de propriété.
Quelles sont les différences?
Depuis la section Admin:
Global Site Tag (gtag.js) et Google Tag Manager sont les méthodes de suivi recommandées pour les nouvelles implémentations. Des options d'implémentation supplémentaires sont également disponibles, y compris analytics.js et le protocole de mesure. En savoir plus sur les méthodes de suivi supplémentaires.
Utilisez analytics.js
La bibliothèque gtag.js est le code de suivi recommandé pour les nouvelles implémentations. Cependant, il peut y avoir des cas où vous préféreriez utiliser analytics.js (par exemple, votre site utilise déjà analytics.js.) Voir la documentation du développeur pour plus d'informations.