@ -552,21 +552,31 @@ export default {
### transformPageData
- Type: `(pageData: PageData ) => Awaitable<Partial<PageData> | { [key: string]: any } | void>`
- Type: `(pageData: PageData , ctx: TransformPageContext ) => Awaitable<Partial<PageData> | { [key: string]: any } | void>`
`transformPageData` is a hook to transform the `pageData` of each page. You can directly mutate `pageData` or return changed values which will be merged into PageData.
::: warning
Don't mutate anything inside the `ctx` .
:::
```ts
export default {
async transformPageData(pageData) {
async transformPageData(pageData, { siteConfig } ) {
pageData.contributors = await getPageContributors(pageData.relativePath)
}
// or return data to be merged
async transformPageData(pageData) {
async transformPageData(pageData, { siteConfig } ) {
return {
contributors: await getPageContributors(pageData.relativePath)
}
}
}
```
```ts
interface TransformPageContext {
siteConfig: SiteConfig
}
```