Environment: browser.

By using prefetch('/some/url') you can programmatically prefetch pages.

Using prefetch() enables you to speed up page navigation when you can predict what the next page will (most likely) be.

For example:

import { prefetch } from 'vike/client/router'
 
function Form() {
   return (
     <form onSubmit={onSubmit}>
       {/* ... */}
     </form>
   )
}
 
async function onSubmit() {
  // Fetch the next page
  prefetch('/form/success')
  // In parallel, make a request to the server
  await someRequestToServer()
  // The assets of the next page may already be fetched at
  // this point, before even calling navigate()
  await navigate('/form/success')
}

Without vike-{react,vue,solid}

If you don't use a UI framework Vike extension vike-react/vike-vue/vike-solid, then you need to use Client Routing to be able to use prefetch(). Prefetching doesn't work with Server Routing.

See also