Add Inertia Prefetch support #3
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds comprehensive support for Inertia Prefetch functionality to the vuetify-inertia-link plugin, following Inertia.js's exact implementation patterns and behavior.
What's New
The plugin now supports Inertia-style prefetching with proper defaults and multiple prefetch modes:
Usage
By default, links do not prefetch (matching Inertia's behavior):
Enable prefetching explicitly:
Implementation Details
The implementation closely follows Inertia's Vue3 link component:
Prefetch Modes:
hover: Prefetches after 75ms hover delay (Inertia's exact timing)click: Prefetches on mousedown, navigates on mouseup for instant feelmount: Prefetches immediately when component rendersEvent Handling: Different event handlers for each prefetch mode, matching Inertia's patterns
Caching: Uses Inertia's
router.prefetch()with proper cacheFor optionsSmart Defaults: When
prefetch={true}, defaults to 'hover' mode like InertiaBackward Compatibility
This is a breaking change in default behavior but maintains API compatibility:
prefetch={true}Fixes #2.
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.