useRoutes
declare function useRoutes(
routes: RouteObject[],
location?: Partial<Location> | string;
): React.ReactElement | null;
useRoutes
hook 是 <Routes>
的函式版本,但它使用 JavaScript 物件代替 <Route>
元素來定義您的路由。這些物件具有與一般 <Route>
元素 相同的屬性,但不需要 JSX。
useRoutes
的傳回值可能是可以拿來渲染路由樹的有效 React 元素,或是如果沒有任何符合項目的話會回傳 null
。
import * as React from "react";
import { useRoutes } from "react-router-dom";
function App() {
let element = useRoutes([
{
path: "/",
element: <Dashboard />,
children: [
{
path: "messages",
element: <DashboardMessages />,
},
{ path: "tasks", element: <DashboardTasks /> },
],
},
{ path: "team", element: <AboutPage /> },
]);
return element;
}