reactjs - 有没有人成功地在 SPA React 应用程序中实施谷歌优化?
问题描述
我对谷歌分析套件相当陌生,目前正在尝试将谷歌优化集成到一个反应应用程序中进行 A/B 测试。
我已经到了在所需网页上显示变体更改的地步,但仅在预览模式下,并且对于如何继续在实时站点上查看变体更改感到困惑。
至今:
谷歌优化脚本安装在应用程序中
<style>.async-hide { opacity: 0 !important} </style> <script>(function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date; h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')}; (a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c; })(window,document.documentElement,'async-hide','dataLayer',4000, {'GTM-XXXXXXX':true});</script>
使用 ReactGA 设置 ga 跟踪
- GTM 已设置并正在触发跟踪代码
在自定义激活事件上触发谷歌优化实验并使用 dataLayer 推送新事件
const initializeReactGa = () => { console.log('called to initialize react ga'); ReactGA.initialize(config.gaTag) ReactGA.ga('require', config.optimizeTag); ReactGA.pageview(window.location.pathname + window.location.search); }
const googleOptimizeLoader = () => { console.log('called google optimize loader'); if(window.dataLayer) { window.dataLayer.push({'event': 'optimize.activate'}) } }
问题
- 无法在实时站点中看到变体更改(未运行预览)
任何帮助表示赞赏。
TIA
奈伊尔
[解决了]
能够确定问题与设置无关。问题是谷歌优化的 cookie 管理无法设置过期所需的 cookie localhost:3000
,而是指向 的自定义域localhost
,类似于XXXX.local:3000
.
解决方案
推荐阅读
- apache-spark - PySpark 和时间序列数据:如何巧妙地避免日期重叠?
- selenium - 如何将对象作为参数传递给 Html 单元驱动程序
- javascript - 在 Vue.js 中构建后出现 JSON 错误的空白页面
- php - 如何从表单输入字段中将月份添加到日期
- amazon-s3 - S3 / AWS 上的清理
- discord.js - 将命令锁定到特定角色
- javascript - 如果我的值需要根据之前的值进行更新,我该如何编写纯函数式代码?
- django-models - Django 使用特定子句过滤 ManyToManyField
- javascript - 如何为表格的单元格设置特定的ID
- c++ - 为什么我不能在编译时获得模板函数的参数计数?