Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

this.$matomo doesn't load when refreshing page manually #119

Open
nickeblewis opened this issue Jul 20, 2022 · 1 comment
Open

this.$matomo doesn't load when refreshing page manually #119

nickeblewis opened this issue Jul 20, 2022 · 1 comment

Comments

@nickeblewis
Copy link

We've been having an intermittent issue when using vue-matomo and Nuxt together. Sometimes when refreshing a page, Matomo doesn't load correctly, whereas when routing via the site's navigation, it is fine. So when trying to use this.$matomo we get "id" is undefined, simply because the plugin hasn't loaded at that point.

We've tied instantiating it in different places, mounted(), beforeUpdated() etc but the problem still happens if the user chooses to refresh the page manually.

One option we've thought of, is to implement a timeout but there must be a better way. Please advise. Thanks!

@AmazingDreams
Copy link
Owner

Unfortunately Matomo is loaded seperately and this.$matomo is not defined until Matomo is loaded. On top of that adblockers / anti-tracking plugins might block Matomo from loading entirely and this.$matomo may not become available ever.

I suggest using the window._paq.push method as documented by Matomo, it would be the easiest way to circumvent this as Matomo will just read the array when it is loaded and you don't need timeouts etc https://developer.matomo.org/guides/tracking-javascript-guide

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants