Edit

+onPrerenderStart() hook

Environment: config (build)
Global
Provided by: vike

Hook called when pre-rendering starts (after API > +onBeforePrerenderStart() hook).

It receives the list of all pageContext objects to be pre-rendered and returns a new list — enabling you to add, remove, or modify pageContext objects. It's commonly used for internationalization.

export { onPrerenderStart }
 
async function onPrerenderStart(prerenderContext) {
  // new page contexts
  const pageContexts = []
 
  // for each original page context:
  prerenderContext.pageContexts.forEach((pageContext) => {
    // for each locale, push a new page context to pageContexts
    // ...
  })
  return {
    prerenderContext: {
      pageContexts
    }
  }
}
export { onPrerenderStart }
 
import type { PrerenderContext, PageContextServer } from 'vike/types'
 
async function onPrerenderStart(prerenderContext: PrerenderContext) {
  // new page contexts
  const pageContexts: PageContextServer[] = []
 
  // for each original page context:
  prerenderContext.pageContexts.forEach((pageContext) => {
    // for each locale, push a new page context to pageContexts
    // ...
  })
 
  return {
    prerenderContext: {
      pageContexts
    }
  }
}

See also