React Router:未捕获类型错误:调度程序为空

问题描述 投票:0回答:1

过去两天我一直在解决这个 React Router 错误,但没有取得太大成功。

问题:

当我设置

react-router-dom
时,它在 Firefox 和 Chrome 上都会出现错误:

注意: 我几乎可以肯定这个问题源自react-router-dom。

我对 Stack Overflow 做了一些研究,但似乎没有一个解决方案适合我的特定设置。我不完全确定这个错误消息表明什么,所以我尝试解决它并没有很有效。

代码:

main.jsx:

import { StrictMode } from "react";
import { createRoot } from "react-dom/client";
import { BrowserRouter } from "react-router-dom";
import App from "./App";
import "./index.css";
import { AppProvider } from "./contexts/AppContext";

createRoot(document.getElementById("root")).render(
  <StrictMode>
    <BrowserRouter>
      <AppProvider>
        <App />
      </AppProvider>
    </BrowserRouter>
  </StrictMode>
);

App.jsx:

import { Route, Routes } from "react-router-dom";
import Layout from "./components/Layout";
import SignIn from "./components/SignIn";

const App = () => {
  return (
    <div>
      <Routes>
        <Route path="/" element={<SignIn />} />
        <Route path="/home" element={<Layout />} />
      </Routes>
    </div>
  );
};

export default App;

如果我遗漏了什么或者您发现任何潜在问题,请告诉我。

javascript reactjs react-router react-router-dom
1个回答
0
投票

我也遇到过类似的问题,是版本冲突的问题。

这是我解决这个问题的方法:

  • 删除
    node_modules
    文件夹和
    package-lock.json
    文件。
  • 运行命令:
    npm install react@latest react-dom@latest react-router-dom@latest

如果这些步骤无法解决您的问题,请删除所有其他提供商并查看其是否有效。

© www.soinside.com 2019 - 2024. All rights reserved.