react框架如何访问页面
访问页面的方法
在React框架中,访问页面通常通过路由(Routing)实现。React Router是常用的路由库,支持动态路由和页面导航。
安装React Router
使用npm或yarn安装React Router的DOM版本:
npm install react-router-dom
配置基本路由
在应用的入口文件(如App.js)中配置路由。使用BrowserRouter作为根组件,Routes和Route定义路径与组件的映射关系:
import { BrowserRouter, Routes, Route } from 'react-router-dom';
import Home from './Home';
import About from './About';
function App() {
return (
<BrowserRouter>
<Routes>
<Route path="/" element={<Home />} />
<Route path="/about" element={<About />} />
</Routes>
</BrowserRouter>
);
}
导航到页面
使用Link组件或useNavigate钩子实现页面跳转。Link适用于声明式导航,useNavigate支持编程式导航:
import { Link, useNavigate } from 'react-router-dom';
function Home() {
const navigate = useNavigate();
return (
<div>
<Link to="/about">About Page</Link>
<button onClick={() => navigate('/about')}>Go to About</button>
</div>
);
}
动态路由与参数传递
通过冒号(:)定义动态路径参数,使用useParams获取参数值:
<Route path="/user/:id" element={<UserProfile />} />
// UserProfile组件中获取参数
import { useParams } from 'react-router-dom';
function UserProfile() {
const { id } = useParams();
return <div>User ID: {id}</div>;
}
嵌套路由
通过嵌套Route组件实现层级路由,父路由的组件中使用Outlet渲染子路由内容:
<Route path="/dashboard" element={<Dashboard />}>
<Route path="settings" element={<Settings />} />
</Route>
// Dashboard组件中包含Outlet
import { Outlet } from 'react-router-dom';
function Dashboard() {
return (
<div>
<h1>Dashboard</h1>
<Outlet />
</div>
);
}
路由守卫
通过自定义组件封装路由,实现权限控制或重定向逻辑:
function PrivateRoute({ element }) {
const isAuthenticated = checkAuth();
return isAuthenticated ? element : <Navigate to="/login" />;
}
// 使用方式
<Route path="/admin" element={<PrivateRoute element={<AdminPanel />} />} />






