- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在尝试将 Google Analytics 与我的 React 应用程序集成,该应用程序使用 react-router-dom v4 中的 HashRouter。但它根本不起作用提示:
Warning: < HashRouter> ignores the history prop. To use a custom history, use
import { Router }
instead ofimport { HashRouter as
.
Router }
ReactGA.initialize('UA-XXXXXXXX-X');
const history = createHistory()
history.listen((location, action) => {
ReactGA.set({ page: location.pathname });
ReactGA.pageview(location.pathname);
});
ReactDOM.render((
<HashRouter history={history}>
<Switch>
<Route path="/" name="App" component={App} />
</Switch>
</HashRouter>
),document.getElementById('root'));
最佳答案
演示项目中提供的示例代码也使用了 HashRouter。
如此处所见;
https://github.com/react-ga/react-ga/blob/master/demo/app/Router.jsx
使用 HOC,withTracker,不是必须的。它只是在每个页面上轻松插入跟踪触发器。如果您在自己的页面组件中实现相同的代码,您可以获得相同的结果。
然后,您需要将以下代码添加到您要手动跟踪的每个组件;
const trackPage = (page) => {
ReactGA.set({
page
});
ReactGA.pageview(page);
};
componentDidMount() {
const page = this.props.location.pathname;
trackPage(page);
}
componentWillReceiveProps(nextProps) {
const currentPage = this.props.location.pathname;
const nextPage = nextProps.location.pathname;
if (currentPage !== nextPage) {
trackPage(nextPage);
}
}
关于reactjs - 如何将 react-ga 与 HashRouter 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50290408/
似乎在上周四/周五发生了一些变化,指标如下:ga:adsenseAdsViewed、ga:adsenseAdsClicks、ga:adsenseRevenue、ga:adsenseAdUnitsVie
ga:entranceBounceRate 和 ga:visitBounceRate 有什么区别? 我从谷歌分析中找到了以下定义,比如 ga:visitBounceRate 单页访问的百分比(即访问
我正在使用 GA API 运行超过 1 年数据的两个查询: 查询1: Get apiQuery = analytics.data().ga() .get("ga:" + profileId, "2
我已经尝试了几天,但没有任何效果。无论我做什么,这些事件都不会被捕获。 我在顶部导入ReactGA import ReactGA from "react-ga"; 导入后初始化它 ReactGA.in
如果未声明 ga,以下 javascript 语句将导致错误。 if (ga) { alert(ga); } 错误是: ga is not defined 看起来未声明的变量无法在 bool 表
您好,我正在尝试使用 GA API 获取特定月份的 Google/自然流量。使用this 我尝试将维度设置为 ['month', 'year' ] 和 ['sourceMedium'],使用指标作为
我对谷歌分析的问题已经困扰我一段时间了,如下:自从我在网站中添加了第三方 iframe 后,分析推荐就变得疯狂,首先他们添加了虚假访问,但通过添加过滤器解决了这个问题。但引荐仍然没有像以前那样注册哪个
我的网站使用 Google Tag Manager 跟踪浏览量,并使用 ga('require', 'ec') 在某些页面中加载增强型电子商务插件,但有一个错误: Uncaught Reference
我正在尝试将 React-GA 添加到我的 create-react-app 项目中(它已被弹出),并且出现以下控制台警告。 [react-ga] gaTrackingID is required i
我正在页面的头部运行谷歌分析。为了提高性能,我在正文末尾加载其他代码,例如 facebook 或 jQuery 业务逻辑异步延迟。 如果 ga('set', 'contentGroup1', 'Cat
谁能解释一下: 1. ga、GA 和 Final Hibernate 版本之间的区别? 2.我应该使用 maven 存储库还是 jboss nexus 存储库? 3.为什么最新的兼容性矩阵 (http
这是网站 - http://www.ssangyong-favorit.ru/由于某种原因,此代码给我“GA 未定义”错误: ga.getAll()[0].get('clientId') 该网站通过
我们目前依赖于使用 UTM 参数(utm_source、utm_medium、utm_campaign、utm_term、utm_content)来实现 Universal Analytics 与 G
我正在使用 Google Tag Manager现在在我所有的网站上实现谷歌分析并在 future 证明它们适用于任何其他脚本。 我将 GTM 放在我的样板文件中。 有什么理由这可能不是好的做法吗?
在我的 Maven pom.xml 中,我有以下依赖项: org.hibernate hibernate-entitymanager 3.3.2.GA org.h
我正在优化我的 external Google Analytics script现在我想知道: https://www.google-analytics.com/ga.js 和 https://ssl
我们最近将 GA Premium 连接到 bigQuery,以导出 1 个属性和 1 个 View 中的所有非抽样数据。我们决定在我们的客户单一属性中使用未过滤的 View 来确保我们获得所有数据,但
我想跟踪谷歌分析中的一些更新而不是添加到分析数据中的值。 例如,如果我想跟踪所有用户的平均高分是多少,以便能够微调评分系统。 我可以在每次游戏退出时添加新的高分值,但它会是增量的,来自同一用户的旧数据
我有以下电子商务跟踪代码。我正在使用多个跟踪器。页面浏览量已正确跟踪,但当我查看电子商务报告时,没有数据通过。我错过了什么? (function (i, s, o, g, r, a, m) {
在我的登录页面的ajax调用中,如果它返回一个名为is_first_login = 1的参数,那么我需要调用ga()来发送GA事件。 此后,页面立即重定向到主仪表板页面。但不知道为什么,有时 ga()
我是一名优秀的程序员,十分优秀!