繁体   English   中英

未捕获的错误:useNavigate() 只能在<router>组件 [react-router-dom 6.4]</router>

[英]Uncaught Error: useNavigate() may be used only in the context of a <Router> component [react-router-dom 6.4]

在过去的几个小时里,我试图弄清楚这一点,但没有成功。 这在 react-router-dom 6.3 上工作得很好,但是一旦我升级到任何 6.4 版本,我就会收到提到的错误。 我已经检查过了,我所有的导入都来自“react-router-dom”,

Orders 组件确实包含 useNavigate(),但如您所见,HashRouter 是最高的。 这是我简化的 index.tsx,它仍然不起作用。

const container = document.getElementById('root');
if (container) {
  const root = createRoot(container);
  root.render(
    <React.StrictMode>
      <HashRouter>
        <Provider store={store}>
          <ChakraProvider theme={theme}>
            <Routes>
              <Route path='/' element={<Orders />} />
            </Routes>
          </ChakraProvider>
        </Provider>
      </HashRouter>
    </React.StrictMode>,
  );
}

有任何想法吗?

不知道为什么,但是从 CRA 切换到 ViteJs 解决了这个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM