Skip to content

Umami breaks client side navigation when paired with anchors. Forces full page reload. #3267

@HighPriest

Description

@HighPriest

Describe the Bug

I have bothered friends on sveltekit side, about broken client side navigation. But, as it turns out, the culprit has been Umami all this time.

If you open the comment on sveltekit project, you are going to find two links to the same website. One is accessed through a domain name & proxy. Another one is accessed directly, through an IP.

When Umami script gets loaded, send messages do not appear on the site accessed through IP, because of data-domains.
But, on website accessed through domain. Where Umami is active & when data-umami-event is attached to an anchor. After click on the anchor & the send completing, instead of normal client side navigation through svelte, entire page is reloaded.

I have mentioned in there, that adding on:click|preventDefault={() => goto(${address}) fixes the client side navigation. But what it really does, is just allow for client side navigation to be handled first (or asynchronously?), then Umami kicks in & triggers whole page reload (which I didn't notice, because all the stuff is already loaded for the next page, so triggered reload is very fast).

Maybe relevant issues: #3144 #2949 #2637

Database

PostgreSQL

Relevant log output

Which Umami version are you using? (if relevant)

2.16

Which browser are you using? (if relevant)

Latest Chromium

How are you deploying your application? (if relevant)

Node server on VPS

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions