privateroute
is not a <route>
component. All component children of <routes>
must be a <route>
or a <react.fragment>
.
Here’s an example to help explain the issue:
<routes>
<react.fragment>
<route path="/home" component={HomeComponent} />
<route path="/settings" component={SettingsComponent} />
</react.fragment>
<privateroute path="/dashboard" component={DashboardComponent} />
</routes>
In the above example, the <privateroute>
component is not a valid child of the <routes>
component.
To fix this issue, you need to ensure that all component children of <routes>
are either a <route>
or a <react.fragment>
. For private routes, you can create a <PrivateRoute>
component that wraps the <Route>
component and handles authorization logic.
Here’s an updated example:
<routes>
<react.fragment>
<route path="/home" component={HomeComponent} />
<route path="/settings" component={SettingsComponent} />
</react.fragment>
<PrivateRoute path="/dashboard" component={DashboardComponent} />
</routes>
In this updated example, the <PrivateRoute>
component wraps the <Route>
component and is a valid child of the <routes>
component.