URLパラメータ(id)を取得し、それを使用してコンポーネントにさらにデータを入力する、react-router-domルートに基づいて詳細ビューをロードしようとしています。
私のルートは次のように/task/:id
なり、次のようにURLから:idを取得しようとするまで、コンポーネントは正常にロードされます。
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
ますか?