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

[Vue] Performance improvement: avoid full page loads and use the pushState API #18984

Open
diosmosis opened this issue Mar 22, 2022 · 0 comments
Labels
c: Performance For when we could improve the performance / speed of Matomo.

Comments

@diosmosis
Copy link
Member

Currently, in many instances, when changing the page, Matomo will redirect to another URL, instead of just changing the hash, doing a full page load. This means JS & CSS will have to be reloaded and parsed again. (Most of the time it will be cached server side, but it still appears as a break in the UX that doesn't have to be there.)

Avoiding page loads would require:

  • finishing the initial Vue migration
  • consolidating all entrypoint twig templates into a single layout that initiates a single root Vue component
  • removing broadcast/moving all logic to MatomoUrl and components that use MatomoUrl's computed properties
  • removing uses of window.location and delegating to MatomoUrl
  • changing MatomoUrl to only use pushState()/onPopState()

This will probably not be possible until Matomo 5 at the earliest.

Refs #18981

@diosmosis diosmosis added the c: Performance For when we could improve the performance / speed of Matomo. label Mar 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c: Performance For when we could improve the performance / speed of Matomo.
Projects
None yet
Development

No branches or pull requests

2 participants