smolter
API

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.

View implementation ↗