Creating a <ProtectedRoute/> component to use with solid router
Hi,
Currently i have this which results in a
Uncaught Error: <A> and 'use' router primitives can be only used inside a Route.
ProtectedRoute.tsx:
Index.tsx:
3 Replies
There's a few things here you'll want to change
Destructuring props like in
ProtectedRoute
isn't supported in Solid
<Router>
should only have <Route>
elements as its children, move the suspense and context providers outside of it
Layout
is a nested layout that should be in a <Route>
of its own like PageWrapper
in this example https://docs.solidjs.com/solid-router/concepts/layouts#nested-layouts
Personally i'd move the ProtectedRoute
logic into Layout
so that it only has to be handled once, rather than on each navigationThank you! Can't figure out what type i should use for the props in
function PageWrapper(props)
. First tought was JSX.Element but that does not work.RouteSectionProps