Skip to content

Commit

Permalink
feat: expose request header x-react-server-render-mode: prerender
Browse files Browse the repository at this point in the history
  • Loading branch information
hi-ogawa committed Jul 1, 2024
1 parent cd33c0a commit d9e2f13
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ export default async function Page(props: PageProps) {
<div>{post.body}</div>
<pre>
[
{globalThis?.process?.env?.["REACT_SERVER_PRERENDER"]
{props.request.headers["x-react-server-render-mode"] === "prerender"
? "prerendered at"
: "dynamically rendered at"}{" "}
{new Date().toISOString()}]
Expand Down
5 changes: 1 addition & 4 deletions packages/react-server/examples/prerender/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,7 @@ export default defineConfig({
plugins: [
react(),
vitePluginReactServer({
prerender: async (_manifest, presets) => {
process.env["REACT_SERVER_PRERENDER"] = "1";
return presets.default();
},
prerender: (_manifest, presets) => presets.default(),
}),
vitePluginLogger(),
vitePluginSsrMiddleware({
Expand Down
6 changes: 5 additions & 1 deletion packages/react-server/src/features/prerender/plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,11 @@ export function prerenderPlugin({
for (const route of routes) {
console.log(` • ${route}`);
const url = new URL(route, "https://prerender.local");
const request = new Request(url);
const request = new Request(url, {
headers: {
"x-react-server-render-mode": "prerender",
},
});
const { stream, html } = await entry.prerender(request);
const data = Readable.from(stream as any);
const htmlFile =
Expand Down

0 comments on commit d9e2f13

Please sign in to comment.