【发布时间】:2021-12-18 01:10:39
【问题描述】:
import { BrowserRouter, Routes, Route } from "react-router-dom";
//Layouts
import HomeLayoutRoute from "./components/layouts/HomeLayout";
//components
import Home from './components/Home';
//import Dashboard from './components/Dash';
// Routing
import PrivateRoute from "./components/routing/PrivateRoute";
// Screens
import PrivateScreen from "./components/loginscreens/PrivateScreen";
import LoginScreen from "./components/loginscreens/LoginScreen";
import RegisterScreen from "./components/loginscreens/RegisterScreen";
import ForgotPasswordScreen from "./components/loginscreens/ForgotPasswordScreen";
import ResetPasswordScreen from "./components/loginscreens/ResetPasswordScreen";
const App = () => {
return (
<BrowserRouter>
<div className="app">
<Routes>
<HomeLayoutRoute path="/" element={<Home />} />
<PrivateRoute path="/" element={<PrivateScreen/>} />
<Route path="/login" element={<LoginScreen/>} />
<Route path="/register" element={<RegisterScreen/>} />
<Route path="/forgotpassword" element={<ForgotPasswordScreen/>}/>
<Route path="/passwordreset/:resetToken" element={<ResetPasswordScreen/>}/>
</Routes>
</div>
</BrowserRouter>
);
};
export default App;
这是我的 App.js 文件 这是错误: 错误:您无法在另一个 .您的应用中不应包含多个。
此代码适用于 React-Router-Dom 版本 5,但是当我移至 React-Router-Dom 版本 6 时出现此错误。
【问题讨论】:
-
您显示的代码看起来不错;它只有一个路由器(
<BrowserRouter>元素)。所以它可能在重复路由器所在的其他组件之一中。 -
你能检查一下我在 React Router 版本 5 中使用的 App.js 代码
-
这是一个设计决定。版本 6 不再支持嵌套路由器。
标签: reactjs version react-router-dom