如何解决如何使用react-ga在ReactJS中注册到Google Adwords的转换?
我正在使用react-ga,效果很好。我可以呼叫事件并跟踪页面。
但是Google Adwords中的转换脚本有些不同:
<script>
function gtag_report_conversion(url) {
var callback = function () {
if (typeof(url) != 'undefined') {
window.location = url;
}
};
gtag('event','conversion',{
'send_to': 'AW-XXXX/XXXX','value': 140.0,'currency': 'BRL','transaction_id': '','event_callback': callback
});
return false;
}
</script>
使用React-GA,我可以注册如下事件:
ReactGA.event({
category: "User",action: "Click Whatsapp button",value: 1,});
问题在于对象没有属性“ send_to”,“ event_callback”,“ currency”,“ transaction_id”。
所以我必须使用ga对象来做到这一点(我认为)。我不知道Google Adwords告诉我使用的ga对象或gtag对象之间是否有区别。
我尝试注册转换,但没有任何反应:
ReactGA.ga("event","conversion",{
send_to: "AW-XXXX/XXXX",value: 140.0,currency: "BRL",transaction_id: "",});
解决方法
在尝试了许多不同的方式之后,这才是真正解决此问题的方式:
将标记添加到public / index.html中,而无需调用配置:
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js',new Date());
</script>
然后将此路由添加到所有路由之上和Switch组件之外:
// This will be called every time the location change
<Route
path="/"
render={({ location }) => {
window.gtag('config','UA-XXXXXXXXX',{
page_path: location.pathname + location.search,});
}}
/>
现在,您可以在任何位置和所有参数下使用gtag对象:
window.gtag('event','purchase',{
send_to: 'AW-XXXX/XXXX',value: order.orderTotal,currency: 'BRL',transaction_id: order.orderId,shipping: parseFloat(order.shipping.price),items: formatedItems,});.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。