浏览代码

Send pageview event to Google Analytics on location change

Konstantin Tarkus 9 年之前
父节点
当前提交
fb836f73d0
共有 2 个文件被更改,包括 5 次插入2 次删除
  1. 4 1
      app.js
  2. 1 1
      components/GoogleAnalytics/GoogleAnalytics.js

+ 4 - 1
app.js

@@ -22,7 +22,10 @@ const route = async (path, callback) => {
 if (canUseDOM) {
   const container = document.getElementById('app');
   Location.listen(location => {
-    route(location.pathname, async (component) => ReactDOM.render(component, container));
+    route(location.pathname, async (component) => ReactDOM.render(component, container, () => {
+      // Track the page view event via Google Analytics
+      window.ga('send', 'pageview');
+    }));
   });
 }
 

+ 1 - 1
components/GoogleAnalytics/GoogleAnalytics.js

@@ -13,7 +13,7 @@ const trackingCode = { __html:
   `e=o.createElement(i);r=o.getElementsByTagName(i)[0];` +
   `e.src='https://www.google-analytics.com/analytics.js';` +
   `r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));` +
-  `ga('create','${googleAnalyticsId}','auto');ga('send','pageview');`,
+  `ga('create','${googleAnalyticsId}','auto');`,
 };
 
 class GoogleAnalytics extends Component {