useRouter
Access the provider’s Router instance.
Compatibility
ReactAvailable in this renderer's browser integration.
React SSRAvailable to this renderer's SSR integration; browser event handlers run after hydration.
PreactAvailable in this renderer's browser integration.
Preact SSRAvailable to this renderer's SSR integration; browser event handlers run after hydration.
Import from @kasperrt/smolter/react @kasperrt/smolter/preact
Signature
function useRouter<T extends NavigationRouter = NavigationRouter>(): T;Parameters
No arguments.
Returns
The current router instance. The default type exposes navigation methods supported by both factories. With a data router provider, useRouter<Router>() exposes its full typed API; Router is the data-router interface. Prefer useFetcher or useRevalidator for reactive data operations.
Usage
Import this API from one of the entry points listed above. Keep server and build helpers in their dedicated subpaths.
const router = useRouter();
const snapshot = router.getSnapshot();
await router.navigate("/tasks");Behavior and edge cases
This hook reads context only; it does not subscribe to state changes. Use useLoaderData, useLocation, or useParams to render reactive values. Calling outside a provider is unsupported.