Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

hizbe's avatar
Level 1

How to use global state management with SSR inertia? such as recoil in react

import React from 'react'
import ReactDOMServer from 'react-dom/server'
import { createInertiaApp } from '@inertiajs/inertia-react'
import createServer from '@inertiajs/server'
import { RecoilRoot } from 'recoil'

createServer((page) => createInertiaApp({
    page,
    render: ReactDOMServer.renderToString,
    resolve: name => require(`./Pages/${name}`),
    setup: ({ App, props }) =>
        <RecoilRoot>
            <App {...props} />
        </RecoilRoot>
}))

this what i got in terminal

Starting SSR server on port 13714...
Inertia SSR server started.
ReferenceError: window is not defined
0 likes
4 replies
hizbe's avatar
Level 1

thanks, my bad. I used window variable for window.history.back(), but ssr can't read window variable.

Sinnbeck's avatar

@hizbe exactly :) that's what the first link pointed to. How to check it in your code

Please or to participate in this conversation.