PIPIONE
2023-10-20 16:38:27
我是 React Router 的新手。這是我的應用程序組件。StudentDetail組件包含轉到出勤頁面的鏈接。其作用是呈現出勤組件,但繼續在新選項卡中顯示StudentDetail的內容。我想要什么:在新選項卡中僅呈現考勤組件?有沒有辦法做到這一點?提前致謝。import { BrowserRouter as Router, Route, Switch,} from "react-router-dom";import "./App.css";import Attendance from "./Components/Attendance/Attendance";import StudentDetail from "./Components/StudentDetail/StudentDetail";export const StudentContext = createContext();const StudentData = { name: "Faisal Rehman", rollNo: "BCSF17M019", courses: [ { courseName: "Computer Architecture", courseAttendance: "" }, { courseName: "Enterprise Application Development", courseAttendance: "", }, { courseName: "Computer Vision", courseAttendance: "" }, { courseName: "Mobile Computing", courseAttendance: "" }, ],};function App() { return ( <Router> <div className="App"> <StudentContext.Provider value={StudentData}> <StudentDetail /> <Switch> <Route exact path="/attendance" component={Attendance} /> </Switch> </StudentContext.Provider> </div> </Router> );}export { App };
2 回答

慕的地8271018
TA貢獻1796條經驗 獲得超4個贊
您可以將學生詳細信息添加到開關,然后它只會根據 URL 呈現一個組件或另一個組件。如果您位于基本網址上,/它將顯示StudentDetail,如果您/attendance在另一個選項卡中打開,它應該只顯示Attendance。
<Switch>
<Route exact path="/" component={StudentDetail} />
<Route exact path="/attendance" component={Attendance} />
</Switch>

狐的傳說
TA貢獻1804條經驗 獲得超3個贊
對于默認組件,您可以像這樣添加
<Router>
<div className="App">
<StudentContext.Provider value={StudentData}>
<Switch>
<Route exact path="/attendance" component={Attendance} />
<Route path="/">
<StudentDetail />
</Route>
</Switch>
</StudentContext.Provider>
</div>
</Router>
添加回答
舉報
0/150
提交
取消