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

React Hash Router v6配置basename后页面空白问题排查与解决

React Router 6.8:HashRouter配置basename后页面空白的问题与解决

我在React Router 6.8中尝试通过createHashRouter配置basename属性,让应用渲染在/sub/route子路由下,但遇到了页面空白的问题:浏览器打开该路径时,仅显示CSS背景,页面内容完全空白,JS未执行,root div始终为空。

我的路由配置代码如下:

const router = createHashRouter([
   {
      id: 'root',
      path: '/',
      element: <App />,
      errorElement: <ErrorPage />,
      loader: filtersLoader(queryClient),
      children: [
         { path: '/', element: <Navigate to="/dashboard/performance" /> },
         {
            path: '/dashboard',
            id: 'dashboard',
            errorElement: <ErrorPage />,
            loader: dataLoader(queryClient),
            element: (
               <>
                  <Header />
                  <Outlet />
               </>
            ),
            children: [
               { index: true, element: <Index /> }
            ]
         },
         {
            path: 'info',
            element: <Info />
         }
      ]
   }
], {
   basename: '/sub/route'
});

更新/解决方案

问题根源是HashRouter与basename属性混用导致的,移除createHashRouter配置中的basename后,页面恢复正常,JS执行正常,root div也能正确渲染内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 11:03:20