Open
Description
Which project does this relate to?
Router
Describe the bug
With defaultPreload: "intent"
set on the router, the preload
& cause
arguments of the root's beforeLoad
are incorrect when hovering Link
.
There seems to be multiple things that are wrong here:
- After initial load, hovering a
Link
causesbeforeLoad
to be triggered on the root withcause: enter
- even on a link going to the currently active route. This behavior is inconsistent with the behavior after clicking a link, in whichcause: stay
is what's reported. preload: false
is always reported for the root'sbeforeLoad
when hovering aLink
. I would expectpreload: true
to be reported on a hover.- Going to a nested route, and then hovering on the link to the same route reports incorrect
cause: "enter", preload: false
on both the parent and on the nested route.
Your Example Website or App
https://stackblitz.com/edit/github-9xzbqucd?file=src%2Fmain.tsx
Steps to Reproduce the Bug or Issue
Reproduction for 1. above:
- Hover the
Home
andAbout
links. - Observe that the console reports the following:
root beforeLoad enter false (expected "stay" - or maybe "preload"?)
index beforeLoad enter false (expected "stay" - or maybe "preload"?)
root beforeLoad enter false (expected "stay" - or maybe "preload"?)
about beforeLoad preload true
- Click the
Home
link. - Hover the
Home
link. - Observe that the console reports the following:
root beforeLoad stay false
index beforeLoad stay false
Reproduction for 2. above:
- Hover the
About
link. - Observe that the console reports
root beforeLoad enter false
(expectedpreload: true
)
Reproduction for 3. above:
- Click the
Nested
link. - Hover the
Nested
link. - Observe that the console reports the following:
root beforeLoad stay false (expected `cause: "stay", preload: true` - or maybe `cause: "preload", preload: true`?)
bag beforeLoad enter false (expected `cause: "stay", preload: true` - or maybe `cause: "preload", preload: true`?)
nested beforeLoad enter false (expected `cause: "stay", preload: true` - or maybe `cause: "preload", preload: true`?)
Expected behavior
See notes in parentheses in the repro steps.
Screenshots or Videos
No response
Platform
- Router / Start Version: 1.124.0
- OS: Linux
- Browser: Chrome
- Browser Version: 138.0
- Bundler: vite
- Bundler Version: 6.3.5
Additional context
Related issues:
Metadata
Metadata
Assignees
Labels
No labels