#How to track page views?

3 messages · Page 1 of 1 (latest)

void juniper
#

Hi, I'm using posthog-js (similar to Google Analytics) to track page views, since tanstack router navigates on the client side, I need to manually trigger the tracking method.

const rootRoute = new RootRoute({
  beforeLoad: () => {
    posthog.capture('$pageview')
  },
})

I'm currently using the above code, but since the page may not navigate when beforeLoad run, the captured url is not the one that is loading.

So what's the best practice to track page views in tanstack router? Thanks

thorn apex
#

You could also subscribe to the onLoad event from the Router instance, and perform your tracking calls there.

#
const unsubscribe = router.subscribe("onLoad", ({ toLocation }) => {
    const href = toLocation.href
    // perform stuff here
})