render() hook

render() hook 定义了页面如何被渲染成 HTML

// /**/*.page.server.js (通常是 /renderer/_default.page.server.js)
// Environment: Node.js

import { escapeInject, dangerouslySkipEscape } from 'vite-plugin-ssr'
import { renderToHtml, createElement } from 'some-ui-framework'

export { render }

async function render(pageContext) {
	const { Page, pageProps } = pageContext
	const pageHtml = await renderToHtml(createElement(Page, pageProps))

	const documentHtml = escapeInject`<!DOCTYPE html>
    <html>
      <head>
        <title>My SSR App</title>
      </head>
      <body>
        <div id="page-root">${dangerouslySkipEscape(pageHtml)}</div>
      </body>
    </html>`

	return {
		documentHtml,
		pageContext: {
			// 我们可以在这里添加一些 `pageContext`
		},
	}
}

pageContext.Page 是正在渲染的页面的 .page.js 文件的 export { Page }