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

React-Router-Dom路由问题:Product页面无法加载求助

问题排查与解决:React Router 路由加载异常及导航栏显示问题

核心问题分析

1. Product页面加载报错

错误提示的直接原因是路由配置属性名拼写错误:

  • 根路由中指定布局组件的属性写成了elements,正确应为单数形式element
  • /product路由同样犯了相同错误,将element误写为elements

React Router v6+ 规定,路由对象中用于指定渲染组件的属性是element(单数),拼写错误会导致路由无法识别要渲染的组件,最终触发空Outlet的错误提示。

2. 导航栏未全局显示

该问题与上述错误同源:根路由的elements拼写错误,导致RootLayout(包含导航栏和Outlet的父布局)未被正确应用。只有根路由正确配置element属性,所有子路由才能继承该布局,导航栏才会在所有页面顶部显示。

3. 产品列表渲染异常

Product.js中使用了错误的列表项标签<l1>,正确应为<li>,这会导致HTML结构无效,列表无法正常渲染。


修正后的关键代码

App.js 路由配置修正

import { createBrowserRouter, RouterProvider} from "react-router-dom";
import HomePage from "./Pages/home";
import Contact from './Pages/contact';
import AboutPage from "./Pages/About";
import RootLayout from "./Pages/Root";
import ErrorPage from "./Pages/error";
import ProductPage from "./Pages/Product";
import ProductDetails from "./Pages/ProductDetails";

const router = createBrowserRouter([
  {
      path: '/',
      // 修正:elements → element
      element: <RootLayout />,
      errorElement: <ErrorPage />,
      children: [
        {path:'/', element:<HomePage />},
        { path: 'contact', element: <Contact /> },
        { path: 'about', element: <AboutPage /> },
        // 修正:elements → element
        { path: 'product', element: <ProductPage /> },
        { path: 'product/:productId', element: <ProductDetails /> },
      ],
  },
]);

function App() {
  return (
  <RouterProvider router={router} />
  );
}

export default App;

Product.js 列表标签修正

import {Link} from 'react-router-dom'

const ProductPage=()=>{
  const PRODUCTS=[
    {productId:'p1', title:'Product 1'},
    {productId:'p2', title:'Product 2'},
    {productId:'p3', title:'Product 3'},
    {productId:'p4', title:'Product 4'},
    {productId:'p5', title:'Product 5'},
  ]
  return (
    <>
      <h1>Products Page</h1>
      <ul>
        {PRODUCTS.map((prod)=>(
          // 修正:<l1> → <li>
          <li key={prod.productId}>
              <Link to={`/product/${prod.productId}`}>{prod.title}</Link>
          </li>
        ))}
      </ul>
    </>
  );
}
export default ProductPage;

内容的提问来源于stack exchange,提问作者Ashmit-Kumar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 17:47:27