import { render } from 'react-dom' import { renderToString } from 'react-dom/server' const Page = ({ html }) => html ? ( <>

saved:

) : (

Hello world

) Page.getInitialProps = async ({ AppTree, pathname, query, asPath }) => { let html const toRender = ( ) if (typeof window !== 'undefined') { const el = document.createElement('div') document.querySelector('body').appendChild(el) render(toRender, el) html = el.innerHTML el.remove() } else { html = renderToString(toRender) } return { html } } export default Page