开发者问题收集

React,获取未捕获的 TypeError:无法在 BrowserRouter 上读取 null 的属性(读取“useRef”)[重复]

2022-08-06
6384

我正在尝试使用 react-router-dom 创建一个 React 项目。由于一个我似乎无法弄清楚的错误,我无法继续。代码在终端上编译时没有错误,但是页面完全是空白的,Chrome 控制台显示以下内容:

React 错误页面

1

这是我的代码:我遵循了官方的 react-router-dom 文档。

import {BrowserRouter, Routes, Route} from 'react-router-dom';
import Dashboard from './pages/Dashboard';
import Tickets from './pages/Tickets';
import Nav from './components/Nav';

const App = () => {
  return (
    <div className='app'>
      <BrowserRouter>
        <Nav/>
        <Routes>
          <Route path="/" element={< Dashboard/>} />
          <Route path="ticket" element={<Tickets />} />
          <Route path="ticket/:id" element={<Tickets editMode={true}/>} />
        </Routes>
      </BrowserRouter>
    </div>
  );
}

export default App;
3个回答

我遇到了同样的错误。问题是我将 react-router-dom 安装在应用程序所在文件夹之外。因此,无法访问浏览器路由器。因此,导航到您的 react 应用程序所在的文件夹,然后重新安装 react 路由器。这对我有用。祝你好运!

Tanaka Chimhande
2022-11-09

您可能在代码中的错误部分使用了钩子。钩子只能在返回 jsx 之前在函数组件内部调用。或者问题可能出在 element={<Tickets editMode={true}/>

Dorin
2022-08-07

在项目目录中的终端📺中执行👇

npm install react-router-dom

vvauban
2023-01-20