Until the version being tested here (2.0.3), There is a problem with inertiajs/react Deferred component.
This repo contains a custom Deferred which fixes this issue by:
keys (to avoid many changes to loaded state);loaded back to false everytime a navigation starts.The "/built-in" route uses the Inertia built-in Deferred component.
By clicking on the button, it will perform a post request to a ping pong route (which only returns back).
This is enough to trigger the error, as stated in this issue.
At "/custom", by clicking the button and nothing but the expected behavior from Deferred happens.
It looks like it only happens with the React Adapter. Svelte and Vue Deferred components seem to work just
as expected.
To run this project, you'll need to have both Rust and Cargo installed. Then, follow the steps:
Copy the environment variables:
cp .env.example .env
In one terminal, type:
# install node modules and start the vite dev server
npm i && npm run dev
Start the application in another terminal:
cargo run
Change the CLIENT key from your environment variables to svelte to enable Svelte template engine.
Set it to vue and restart to enable Vue template engine. Remove it or change to react to use React
as the template engine.
Restart the Actix Web server everytime you change this key, so that it recompiles the root template.