Reactjs 初始页面加载时未调用nextjs router.events.on
我有一个工作Reactjs 初始页面加载时未调用nextjs router.events.on,reactjs,next.js,Reactjs,Next.js,我有一个工作useffect在更改页面时调用我的google analytics。 这在更改页面时可以正常工作,但当您首次加载或刷新页面时,它不会调用路由器.events.on 这是我的密码 useEffect(() => { if (cookies === true) { router.events.on("routeChangeComplete", () => { ReactGA.pageview(
useffect
在更改页面时调用我的google analytics。
这在更改页面时可以正常工作,但当您首次加载或刷新页面时,它不会调用路由器.events.on
这是我的密码
useEffect(() => {
if (cookies === true) {
router.events.on("routeChangeComplete", () => {
ReactGA.pageview(window.location.pathname);
});
return () => {
router.events.off("routeChangeComplete", () => {
ReactGA.pageview(window.location.pathname);
});
};
}
}, [router.events]);
我曾想过使用另一个useffect
来最初调用reactGA,但当更改页面时,它会被调用两次,这是不好的
您知道如何在初始页面加载时执行此操作吗?
路由器。事件只会在使用Next.js路由器的客户端页面导航上触发
您可以在单独的useffect
上调用ReactGA.pageview
,以处理初始页面加载
useffect(()=>{
如果(cookies==true){
页面视图(窗口、位置、路径名);
}
}, []);