#reactjs #react-router-dom
Вопрос:
Я новичок в реагировании, и я столкнулся с проблемой, которая показывает ошибку: Недопустимый вызов крючка. Крючки могут вызываться только внутри тела компонента функции, я проверил версию React и React Dom, но это та же самая проблема .
import './App.css'; import {BrowserRouter as Router, Route ,Routes} from 'react-router-dom' import Container from 'react-bootstrap/Container'; //Pages import Header from './Pages/Header' import List from './Pages/List'; function App() { return ( lt;Routergt; lt;Containergt; lt;div className="App"gt; lt;div className="Content"gt; lt;Routesgt; lt;Route path="../src/Pages/List.js" component={List} /gt; lt;/Routesgt; lt;/divgt; lt;/divgt; lt;/Containergt; lt;/Routergt; /*lt;BrowserRoutergt; lt;Containergt; lt;Header /gt; lt;Routesgt; lt;Route path="../src/Pages/List.js" components={List} /gt; lt;/Routesgt; lt;/Containergt; lt;/BrowserRoutergt; */ ); } export default App; ``'
Комментарии:
1. Какая версия
react
иreact-dom
установлена ли у вас? Запуститеnpm list react react-dom
свой проект и отчитайтесь. Крючки React были введены в IIRC React v16.8.4, поэтому вам нужна хотя бы эта версия.2. Если он прошел v16.8.4 , не могли бы вы указать точное местоположение, в котором произошла эта ошибка? Скорее всего, находится внутри компонента
3. «реагировать»: «^17.0.2», «реагировать-дом»: «^17.0.2»,
4. Что ж, у вас достаточно новая версия React, и
App
вы не используете никаких крючков React. Есть идеи, о каком компоненте идет речь? Это внутриList
? Каково полное сообщение об ошибке? Есть ли трассировка стека?