我正在尝试使用反应制作一个简单的路由系统,但是当我单击链接导航到另一个页面时,它只是更改了 URL,但不显示内容,然后当我按 F5 时,它显示一切正常。
这是我的代码,我不明白我做错了什么,我也尝试创建另一个应用程序,但结果是一样的。
索引.js
import ReactDOM from "react-dom/client";
import App from "./App";
const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
应用程序.js
import "./App.css";
import { BrowserRouter as Router, Switch, Route } from "react-router-dom";
import Dashboard from "./pages/Dashboard/Dashboard";
import Notes from "./pages/Notes/Notes";
function App() {
return (
<Router>
<Switch>
<Route path="/" component={Dashboard} exact />
<Route path="/notes" component={Notes} />
</Switch>
</Router>
);
}
export default App;
仪表盘
import PageContent from "../../components/PageContent/PageContent";
import ResponsiveDrawer from "../../components/ResponsiveDrawer/ResponsiveDrawer";
import { Link } from "react-router-dom";
const Dashboard = () => {
return (
<>
<ResponsiveDrawer>
<PageContent
header={
<div className={`flex-row`}>
<h1
className={`font-extrabold tracking-tight truncate capitalize`}
>
dashboard
</h1>
</div>
}
body={<>Bentornato utente!</>}
></PageContent>
</ResponsiveDrawer>
</>
);
};
export default Dashboard;
在您的代码中导入Routes
而不是Switch
替换。<Switch>
使用element
代替组件,并添加实际组件作为其值而不仅仅是名称。
您可能应该Notes
先移动路线,因为我认为排序有影响。
<Router>
<Routes>
<Route path="/notes" element={<Notes />} />
<Route path="/" element={<Dashboard />} exact />
</Routes>
</Router>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句