React Router v6:私有路由组件出错
您在 React Router v6 中定义私有路由时遇到错误。该错误消息指出 PrivateRoute 组件不是
解决方案
在 PrivateRoute.js 中,将代码替换为以下内容:
<code class="javascript">import React from 'react'; import { Navigate, Outlet } from 'react-router-dom'; const PrivateRoute = () => { const isAuthenticated = false; // Replace with your authentication logic return isAuthenticated ? <Outlet /> : <Navigate to="/home" />; }; export default PrivateRoute;</code>
在route.js中,按如下方式更新代码:
<code class="javascript">... <PrivateRoute exact path="/"> <Route exact path="/" element={<Dashboard />} /> </PrivateRoute> <Route exact path="/home" element={<Home />} /></code>
解释
PrivateRoute组件现在使用
组件,它允许在授权时渲染路由的子级。 组件用于在未通过身份验证的情况下将用户重定向到特定页面。在 App.js 中,确保将您的路由包装在
以上是如何修复 React Router v6 中的'PrivateRoute is Not a”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!