Я использую Angular 5 и хочу добавить Google Analytics.
На этот счет уже есть несколько учебных пособий, таких как:
Все учебники, которые я видел, требуют добавления следующего кода в index.html:
index.html
...
<app-root></app-root>
<script>
(function(i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
i[r] = i[r] || function() {
(i[r].q = i[r].q || []).push(arguments)
}, i[r].l = 1 * new Date();
a = s.createElement(o),
m = s.getElementsByTagName(o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m)
})(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-109919601-1', 'auto'); // add your tracking ID here. ISSUE HERE!
ga('send', 'pageview');
</script>
...
Проблема в строке:
ga('create', 'UA-109919601-1', 'auto');
Я хочу использовать другой код отслеживания в зависимости от того, в какой среде я нахожусь.
Как я могу это сделать?
Некоторые решения предлагают добавить этот код в код Angular следующим образом:
import { environment } from './environments/environment';
if (environment.production) {
document.write('<script type="text/javascript">// ProductionAnalyticsCodeHere</script>');
} else if (environment.staging) {
document.write('<script type="text/javascript">// StagingAnalyticsCodeHere</script>');
}
Проблема этого решения заключается в том, что Google Analytics запускается не так быстро, что влияет на аналитику времени загрузки.
Спасибо за помощь: -)