I tried to create react app using router dom and stuck in problem, i have that App
component:
function App() {
return (
<div id="page">
<Sidebar />
<SearchField />
<RouterProvider router={router} />
</div>
);
}
and that router
config:
const router = createBrowserRouter(
[
{
path: "city/:cityName",
element: (
<WeatherContent />
)
},
{
path: "cities",
element: (
<WeatherContent />
)
},
{
path: "settings",
element: (
<WeatherContent />
)
},
{
path: "/",
loader: () => {
throw redirect("city/New%20York")
},
element: (
<></>
),
},
{
path: "*",
element: (
<div>
<h1>Error 404</h1>
<h2>page not found</h2>
<Link to="home">Go back home</Link>
</div>
),
}
]);
and my Sidebar
and SearchField
components have Link
's from router dom, so i don't know where should i put them, so they would exist on every page and woun't throw errors, can someone help me with that?
i've tried to put path: '/'
element as first, remove redirect from there and put Sidebar
and SearchField
inside, like that:
{
path: "/",
element: (
<>
<Sidebar />
<SearchField />
</>
),
}
but that doesn't seem to help