我的 React 应用程序遇到问题,找不到从react-router-dom 导入的重定向和切换组件。这是我的代码:
import React from 'react';
import { BrowserRouter as Router, Route, Redirect, Switch } from 'react-router-dom';
import Users from './Users/pages/Users';
const App = () => {
return (
<Router>
<Switch>
<Route path="/" exact>
<Users />
</Route>
<Redirect to="/" />
</Switch>
</Router>
);
};
export default App;
但是,我收到以下错误消息:
export 'Redirect' (imported as 'Redirect') was not found in 'react-router-dom'
export 'Switch' (imported as 'Switch') was not found in 'react-router-dom'
我已经检查了我的项目中是否安装了react-router-dom "react-router-dom": "^6.21.0",并且我已经验证了我的导入语句与包提供的命名导出相匹配。我不确定为什么我仍然遇到这个问题。任何有关如何解决此问题的见解或建议将不胜感激。谢谢!
我认为重定向和切换功能在版本6中被替换 您可以使用 useNavigate 钩子进行重定向,并将 Route 嵌套在 Routes 组件中
<BrowserRouter>
<Routes>
<Route index element={<Home/>}/>
<Route path="/" element={<Something else/>}/>
</Routes>
</BrowserRouter>
您可以查看 React router dom 版本 6 的文档以获取更多详细说明