reitit 2026-08-05

For client side reitit (using reitit.frontend.easy at the moment), is there any sort of mechanism to be able to prevent navigation to a route until some data has been pre-loaded? I am aware of :start controllers, but those just fire synchronously, no way to delay navigation.

Don't display the link to navigate until pre-loading is complete? Or design your pages to show placeholders or spinners or whatever until data has been fetched. Are you using re-frame? My navigation is handled by re-frame events, so I can block a route change, or queue it up for later after some other event (like a pre-load) has succeeded.

I am not using re-frame, though I have a similar-ish event system, so blocking a route change my pre-load finishes is not a bad idea.