@tanstack/react-router
Version:
Modern and scalable routing for React applications
29 lines (28 loc) • 781 B
JavaScript
import ReactDOMServer from "react-dom/server";
const renderRouterToString = async ({
router,
responseHeaders,
children
}) => {
try {
let html = ReactDOMServer.renderToString(children);
const injectedHtml = await Promise.all(router.serverSsr.injectedHtml).then(
(htmls) => htmls.join("")
);
html = html.replace(`</body>`, `${injectedHtml}</body>`);
return new Response(`<!DOCTYPE html>${html}`, {
status: router.state.statusCode,
headers: responseHeaders
});
} catch (error) {
console.error("Render to string error:", error);
return new Response("Internal Server Error", {
status: 500,
headers: responseHeaders
});
}
};
export {
renderRouterToString
};
//# sourceMappingURL=renderRouterToString.js.map