useRoutes
declare function useRoutes(
routes: RouteObject[],
location?: Partial<Location> | string;
): React.ReactElement | null;
useRoutes
钩子是 <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;
}