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

React-Router-Dom(v6)无法渲染Home组件问题求助

问题描述

尝试渲染Home组件时页面空白,路径配置正确,Router相关导入无误。该代码在其他项目可正常运行,复制到当前项目后失效。单独渲染Home组件显示正常,添加Router、Routes及Route路由配置后出现空白页面。

相关代码:

App.js

import React from "react";
import Home from "./components/Home"
import {BrowserRouter as Router, Route, Routes} from "react-router-dom"

function App() {
  return (
    <Router>
      <Routes>
        <Route exact path="/" element={<Home/>}/>
      </Routes>
    </Router>
  );
}

export default App;

Home.js

import React from 'react'

function Home() {
  return (
    <div>Home</div>
  )
}

export default Home

index.js

import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>
);

reportWebVitals();

预期页面加载时渲染Home组件,实际显示空白页面。


排查与解决方法
  • 检查react-router-dom版本兼容性
    你的代码采用的是react-router-dom v6的写法(使用<Routes>组件、Route的element属性),如果当前项目安装的是v5版本,会直接导致路由无法正常渲染。

    • 执行命令查看当前版本:npm list react-router-dom(npm项目)或yarn list react-router-dom(yarn项目)
    • 若为v5版本,需调整代码为v5适配写法:
      // App.js 修改后
      import React from "react";
      import Home from "./components/Home"
      import {BrowserRouter as Router, Route, Switch} from "react-router-dom"
      
      function App() {
        return (
          <Router>
            <Switch>
              <Route exact path="/" component={Home}/>
            </Switch>
          </Router>
        );
      }
      
    • 若为v6版本,直接移除exact属性即可(v6默认精确匹配,exact属性已被废弃,虽写了不会报错但无意义):
      <Route path="/" element={<Home/>}/>
      
  • 验证根元素存在性
    检查public/index.html文件中是否存在<div id="root"></div>,确保index.js中的document.getElementById('root')能正确获取到DOM节点。

  • 查看控制台报错信息
    打开浏览器开发者工具的Console面板,查看是否有路由相关报错(比如导入错误、版本不兼容提示等),这类错误会直接导致组件无法渲染。

  • 排查全局样式影响
    检查index.css或其他全局样式文件,确认是否存在body { display: none; }或针对#root元素的隐藏样式,这类设置会导致页面整体空白。


内容的提问来源于stack exchange,提问作者JunE

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 08:30:44