React Router无法加载页面内容:单独加载组件正常路由加载失败
React Router配置后Home组件无法加载的解决办法
核心问题
你误用了Router组件——这个组件要求手动传入history实例才能正常运行,而你没有配置对应的history对象,导致路由无法渲染目标组件。
修复步骤
- 替换路由容器组件:把代码里的
<Router>换成<BrowserRouter>,BrowserRouter已经封装了浏览器环境的history处理逻辑,无需额外配置。 - (可选)检查组件路径:确认
./componenets/Home/Home.js的拼写是否正确(注意components是否少了一个t,路径错误也会导致组件加载失败)。
修正后的App组件代码
import React from 'react'; import { BrowserRouter, Routes, Route } from "react-router-dom"; import Home from './componenets/Home/Home.js'; export default function App() { return ( <BrowserRouter> <Routes> <Route path="/" element={<Home />} /> </Routes> </BrowserRouter> ); }
额外说明
你的代码使用的是React Router v6语法(Routes、element属性),确保安装的react-router-dom版本是v6及以上。如果是v5版本,需要改用Switch组件和component/render属性来配置路由。
内容的提问来源于stack exchange,提问作者user17582110
相关产品推荐
相关产品推荐

