Environment: browser.

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

prefetch() works only with Client Routing. Prefetching isn't possible with Server Routing.

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}>
       {/* ... */}
async function onSubmit() {
  // Fetch the next page
  // 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')