You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React报错:BrowserRouter无法作为JSX组件使用的问题求助

React报错:BrowserRouter无法作为JSX组件使用的问题求助

嘿,我刚碰到这个一模一样的报错,折腾了好一会儿才搞明白问题出在哪!先瞅瞅你代码里的导入部分——你写的是import BrowserRouter from 'react-router-dom';对吧?这就是问题的根源啦!

在react-router-dom(尤其是常用的v6版本)里,BrowserRouter是命名导出的组件,不是默认导出。你直接用默认导入的方式,拿到的其实是整个模块对象,根本不是能用来渲染的JSX组件,自然就会抛出这个错误。

给你两个关键的修复步骤:

  • 修正导入语句,改成命名导入的形式:
    import { BrowserRouter } from 'react-router-dom';
    
  • 然后在渲染根组件的时候,用BrowserRouter把你的App组件包裹起来,完整的渲染代码大概是这样:
    root.render(
      <React.StrictMode>
        <BrowserRouter>
          <App />
        </BrowserRouter>
      </React.StrictMode>
    );
    

要是改完之后还有问题,你可以检查下react-router-dom的版本,确保是v6或者兼容的版本,不过大部分情况下,导入方式错了是最常见的原因~

备注:内容来源于stack exchange,提问作者George Bentz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.13 16:05:26