📌  相关文章
📜  'Switch' 不是从'react-router-dom' 导出的. - Javascript(1)

📅  最后修改于: 2023-12-03 15:13:02.881000             🧑  作者: Mango

'Switch' 不是从 'react-router-dom' 导出的. - Javascript

在 React 应用程序中,往往会使用 react-router-dom 来管理应用程序的路由。react-router-dom 提供了众多有用的包装器和组件,例如 BrowserRouterRouteLink 等等,以方便我们更加便捷地管理路由。

其中一个非常常用的组件是 Switch,它可以包裹在一组 Route 组件的外面,用于确定哪个路由应该匹配。但是,在使用 Switch 的时候,你可能会遇到一个错误:

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

这个错误提示表明,你尝试从 react-router-dom 中导入 Switch 组件,但是这个组件并没有被导出。那该怎么办呢?

其实,Switch 组件是从 react-router 中导出的。它和其它常用组件(如 BrowserRouterHashRouter)一样,不是从 react-router-dom 包中导出的。

所以,如果你想在项目中使用 Switch 组件,你需要安装 react-router 依赖,然后通过以下方式导入:

import { Switch } from 'react-router';

注意,这里的 Switch 是从 react-router 导入的,而不是 react-router-dom。这样就可以在项目中使用 Switch 组件了。

总结起来,如果你遇到 'Switch' is not exported from 'react-router-dom'. 的错误提示,记得检查你是否已经正确安装了 react-router 依赖,并使用 import { Switch } from 'react-router'; 导入 Switch 组件。