📅  最后修改于: 2023-12-03 15:38:06.349000             🧑  作者: Mango
在 React 中进行重定向通常需要使用 react-router-dom
。本文将介绍在使用 TypeScript 编写 React 项目时如何使用 react-router-dom
进行重定向。
首先,我们需要安装 react-router-dom
和 @types/react-router-dom
两个包。
npm install react-router-dom @types/react-router-dom
我们可以将重定向组件定义为一个 React 函数组件。假设我们需要在 /dashboard
路径下进行重定向到 /home
:
import React from 'react';
import { Redirect } from 'react-router-dom';
const DashboardRedirect: React.FC = () => {
return <Redirect to="/home" />;
}
export default DashboardRedirect;
注意:我们需要引入 Redirect
组件。
在使用 react-router-dom
的 Switch
和 Route
组件时,我们需要将我们的 DashboardRedirect
组件放在最后一个 Route
后面,以确保重定向正确生效。
import React from 'react';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import Home from './Home';
import Dashboard from './Dashboard';
import DashboardRedirect from './DashboardRedirect';
const App: React.FC = () => {
return (
<Router>
<Switch>
<Route exact path="/" component={Home} />
<Route path="/dashboard" component={Dashboard} />
<Route component={DashboardRedirect} />
</Switch>
</Router>
);
}
export default App;
这样,在用户访问 /dashboard
路径时,就会自动重定向到 /home
路径。
通过以上三个步骤,我们就可以在 TypeScript 中使用 react-router-dom
进行重定向了。需要注意的是,在重定向组件中我们需要引入 Redirect
组件,并且在路由中需要将重定向组件放在最后一个 Route
后面,以确保重定向生效。