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

React.js页面跳转问题:Header组件无法关联Team页面排查

React路由空白页问题排查与修复

问题根源及修复点:

  • 路由未被Router包裹:react-router-dom的Routes组件必须在BrowserRouter(别名Router)内部才能生效,原App.jsx里没有用Router包裹,导致路由系统无法正常工作。
  • 组件导入大小写不匹配:App.jsx中导入Team组件时写成了小写team,但组件导出的是大写Team,导致无法正确识别并渲染组件。
  • Header组件不完整:Header里使用了Link但未导入,且组件结构缺失(单独的<li>标签不符合HTML规范,需要包裹在<ul>/<ol>内,同时Header本身要作为完整的函数组件导出)。

修正后的代码:

/src/App.jsx

import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
import Footer from "./components/Footer";
import Header from "./components/Header";
// 修正组件名称大小写,与导出保持一致
import Team from "./pages/Team";

function App() {
  return (
    // 用Router包裹整个应用,让路由生效
    <Router>
      <Header />
      <Routes>
        <Route path='/team' element={<Team />} />
        // 添加根路由,避免访问首页时空白
        <Route path='/' element={<h1>首页</h1>} />
      </Routes>
      <Footer/>
    </Router>
  );
}

export default App;

/src/components/Header.jsx

// 导入react-router-dom的Link组件
import { Link } from 'react-router-dom';

// 封装成完整的函数组件,完善HTML结构
function Header() {
  return (
    <nav>
      <ul className="flex space-x-4">
        <li>
          <Link 
            to="/team"
            className="block py-2 pr-4 pl-3 text-gray-700 border-b border-gray-100 hover:bg-gray-50 lg:hover:bg-transparent lg:border-0 lg:hover:text-primary-700 lg:p-0 dark:text-gray-400 lg:dark:hover:text-white dark:hover:bg-gray-700 dark:hover:text-white lg:dark:hover:bg-transparent dark:border-gray-700"
          >
            Team
          </Link>
        </li>
      </ul>
    </nav>
  );
}

export default Header;

/src/pages/Team.jsx(无需修改)

function Team() {
  return <h1>Our Team</h1>;
}

export default Team;

修复后,访问根路径会显示首页内容,点击Header中的Team链接即可跳转到/team页面,正常显示"Our Team"标题,不会再出现空白页面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 04:05:08