reactjs - 尝试导入错误:“Switch”未从“react-router-dom”导出
问题描述
我不知道为什么会收到此错误,也无法在任何地方找到答案。我已经卸载了react-router-dom
软件包并重新安装了它,但它仍然告诉我交换机模块不是从 react-router-dom 导出的。这是我的代码。
我得到的错误:
尝试导入错误:“Switch”未从“react-router-dom”导出。
代码
import React from 'react';
import './App.css';
import NavBar from './components/navbar.js';
import Footer from './components/footer.js';
import Home from './components/pages/homepage/home.js';
import { BrowserRouter as Router, Switch, Route, Link } from 'react-router-dom';
function App() {
return (
<Router>
<div className="app-container">
<NavBar />
<Switch>
<Route path="/home" component={Home} />
</Switch>
<Footer />
</div>
</Router>
);
}
export default App;
解决方案
在react-router-dom v6 中,“Switch”被路由“Routes”取代。您需要从
import { Switch, Route } from "react-router-dom";
至
import { Routes ,Route } from 'react-router-dom';
您还需要更新 Route 声明
<Route path="/" component={Home} />
至
<Route path='/welcome' element={<Home/>} />
在react-router-dom中,您也不需要在 Route 声明中使用确切的。
更多信息可以访问官方文档: 升级到react-router-dom v6
推荐阅读
- c# - 无法为 winform 设置位置
- java - 在Android中获取FCM消息令牌的正确方法是什么?
- pascal - 枚举类型和寄存器
- python - 命令 '['dot', '-Tpng']' 返回非零退出状态 1
- javascript - 过滤成员 Discord JS
- autohotkey - 当我断开本地桌面时,远程桌面上的自动热键不起作用
- c# - 如何使用 Powershell 在显示器的特定位置打开应用程序
- google-apps-script - 如何在模态中使用工作表数据?
- sql - 对于具有不同 id 的相同类型的记录,更新/连接一个列值与另一个列值
- pyspark - PySpark:使用 Split 和 withColumn 将具有不同字符标记的 DF 列拆分为另一列