【react】‘ Switch ‘不从‘ react-router-dom ‘导出问题解决方法

今天我配置react-router时出现了以下错误

' Switch '不是从' react-router-dom '在reactjs导出。

所以我列举一下所有可能的解决办法。

不浪费你的时间,让我们开始这篇文章解决这个错误。

目录

' Switch '不导出' react-router-dom '错误是如何发生的?

如何解决' Switch '不导出' react-router-dom '错误?

方法1:使用Routes代替Switch

方法2:版本回退,安装Switch


' Switch '不导出' react-router-dom '错误是如何发生的?

我出现了以下错误。

'Switch' is not exported from 'react-router-dom'

如何解决' Switch '不导出' react-router-dom '错误?

       你可以使用Switch。Switch在react-router-dom版本6中被替换。所以你需要安装react-router-dom版本5。现在,你的错误应该被解决了。

方法1:使用Routes代替Switch

import {
  BrowserRouter,
  Routes, // 使用Routes 而不是"Switch"
  Route,
} from "react-router-dom";

然后你可以这样使用

//之前
<BrowserRouter>
      <Switch>
      //注意看这里的区别
        <Route exact path="/" component={Home}>
        //注意看这里的区别
          <Home/>
        </Route>
      </Switch>
</BrowserRouter>


//之后
<BrowserRouter>
      <Routes>
      //这里将Switch转为Routes
        <Route exact path="/" element={<Home />}>
        //注意这里的component修改为element,而且组件调用使用的是标签<>,而不是模块;
          <Home/>
        </Route>
      </Routes>
</BrowserRouter>

方法2:版本回退,安装Switch

在这里只安装Switch。然后你可以使用Switch。Switch在react-router-dom版本6中被替换。所以你需要安装react-router-dom版本5。

npm install react-router-dom@5.2.0

都是关于这个问题。希望所有的解决方案对你有很大帮助。请在下方评论你的想法和疑问。另外,请在下方评论哪一种解决方案适合你?谢谢你!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

繁星召唤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值