Я пытаюсь загрузить подробное представление на основе маршрутаact-router-dom, который должен получить параметр URL (id) и использовать его для дальнейшего заполнения компонента.
Мой маршрут выглядит так, /task/:id
и мой компонент загружается нормально, пока я не попытаюсь извлечь: id из URL следующим образом:
import React from "react";
import { useParams } from "react-router-dom";
class TaskDetail extends React.Component {
componentDidMount() {
let { id } = useParams();
this.fetchData(id);
}
fetchData = id => {
// ...
};
render() {
return <div>Yo</div>;
}
}
export default TaskDetail;
Это вызывает следующую ошибку, и я не уверен, где правильно реализовать useParams ().
Error: Invalid hook call. Hooks can only be called inside of the body of a function component.
Документы показывают только примеры, основанные на функциональных компонентах, а не на классах.
Спасибо за вашу помощь, я новичок, чтобы реагировать.
useParams
? Может превратить это в HOC
?