我已经尝试了几天,但没有任何效果。无论我做什么,这些事件都不会被捕获。
我在顶部导入ReactGA
import ReactGA from "react-ga";
导入后初始化它
ReactGA.initialize("TRACKING-ID", {
debug: true
});
我创建一个函数来处理跟踪器
const GASignInHandler = name => {
ReactGA.event({
category: "Dashboard Home",
action: `User Signing In As ${name}`,
label: "Tracking users every time they sign in.",
nonInteraction: true
});
};
在我称为 DashHome 的功能组件中,在返回中我称之为此。 如果signedIn = true,则运行此函数,如果不运行则运行console.log。这显然是为了测试目的,但我仍然没有看到这个事件被记录在 GA 中。它在调试时触发。
{signedIn ? GASignInHandler(userEmail) : console.log("signin not true")}
[react-ga] with fieldObject: {"hitType":"event","eventCategory":"Dashboard Home","eventAction":"User Signing in as My","eventLabel":"Tracking Users Every Time They Sign In.","nonInteraction":true} log.js:2 [react-ga] with trackers: undefined
我还拥有 GA 告诉我放入 public/index.html 中的所有标签。
最佳答案
将其放入index.js 解决了问题。
(function initAnalytics() {
initGA("Tracking ID");
})();
initGA 函数是手动创建的(该文件称为index.js)
import ReactGA from "react-ga";
export const initGA = trackingID => {
ReactGA.initialize(trackingID);
};
export const PageView = () => {
ReactGA.pageview(window.location.pathname + window.location.search);
};
export const Event = (category, action, label) => {
ReactGA.event({
category,
action,
label
});
};
我还删除了 public/index.html 中的所有脚本。我只有react-ga init。
看来你也必须把
ReactGA events
如果您使用功能组件,则进入 useEffect Hook 。
关于javascript - React-GA 事件在调试控制台中触发,但未显示在 GA 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60534049/