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

使用react-router无内容显示:嵌套路由及App组件渲染问题求助

React Router配置后App组件不显示,添加Link后渲染失败的解决方法

核心问题定位

你的代码里最关键的错误是App组件的导入路径不匹配:
在index.js中你写的是import App from './App';,但实际App组件文件放在routes/app.js目录下,路径错误导致组件无法被正确加载,所以App内容完全不显示;当你添加Link组件时,这个导入错误会直接触发组件渲染失败。

解决步骤

  1. 修正App组件的导入路径
    将index.js中的导入语句修改为:

    import App from './routes/app'; // 匹配实际文件位置
    
  2. 确认文件结构一致性
    确保你的文件结构和导入路径对应:

    src/
    ├── index.js
    └── routes/
        ├── app.js
        └── products.jsx
    
  3. 验证react-router-dom版本
    你使用的Routes、Outlet都是react-router-dom v6的API,确保你的依赖版本是v6系列,可以通过终端执行npm list react-router-dom查看版本,若版本过低,执行npm install react-router-dom@latest更新。

修正后的完整index.js代码

import React from 'react';
import ReactDOM from 'react-dom/client';
import { BrowserRouter, Routes, Route } from "react-router-dom";
import App from './routes/app';
import Products from './routes/products';

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
  <React.StrictMode>
    <BrowserRouter>
        <Routes>
            <Route path="/" element={<App />}>
                <Route path="products" element={<Products />} />
            </Route>
        </Routes>
    </BrowserRouter>
  </React.StrictMode>
);

修改完成后,App组件就能正常渲染,点击Link也能跳转到Products页面了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 12:42:25