React 是一个用于构建用户界面的 JavaScript 库,而 React Router 是一个用于在 React 应用程序中实现客户端路由的库。React Router 允许你在不同的 URL 下显示不同的组件,从而实现单页应用(SPA)。
React Router 主要有三种类型:
React Router 适用于需要在客户端进行页面导航和状态管理的单页应用(SPA),例如:
以下是一个简单的示例,展示如何在页面加载后使用 React Router 添加路由:
import React from 'react';
import { BrowserRouter as Router, Route, Switch, Link } from 'react-router-dom';
const Home = () => <h1>Home</h1>;
const About = () => <h1>About</h1>;
const Contact = () => <h1>Contact</h1>;
const App = () => {
return (
<Router>
<div>
<nav>
<ul>
<li>
<Link to="/">Home</Link>
</li>
<li>
<Link to="/about">About</Link>
</li>
<li>
<Link to="/contact">Contact</Link>
</li>
</ul>
</nav>
<Switch>
<Route path="/" exact component={Home} />
<Route path="/about" component={About} />
<Route path="/contact" component={Contact} />
</Switch>
</div>
</Router>
);
};
export default App;
原因:
Router
组件未正确包裹应用。解决方法:
Router
组件正确包裹整个应用。例如,检查以下代码:
import React from 'react';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import Home from './Home';
import About from './About';
import Contact from './Contact';
const App = () => {
return (
<Router>
<Switch>
<Route path="/" exact component={Home} />
<Route path="/about" component={About} />
<Route path="/contact" component={Contact} />
</Switch>
</Router>
);
};
export default App;
确保 Home
、About
和 Contact
组件已正确导入和导出。
通过以上信息,你应该能够理解 React 在页面加载后添加路由的基础概念、优势、类型、应用场景以及常见问题的解决方法。
领取专属 10元无门槛券
手把手带您无忧上云