React の useComponentDidMount フック

ReactReactBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、ReactにおけるuseComponentDidMountフックの使い方を学びます。このフックを使うと、コンポーネントがマウントされた直後にコールバックを実行できます。これは、クラスコンポーネントのcomponentDidMount()メソッドと似ています。この実験が終わるとき、このフックの使い方と、Reactプロジェクトでどのように役立つかをより深く理解しているでしょう。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL react(("React")) -.-> react/FundamentalsGroup(["Fundamentals"]) react(("React")) -.-> react/AdvancedConceptsGroup(["Advanced Concepts"]) react/FundamentalsGroup -.-> react/jsx("JSX") react/AdvancedConceptsGroup -.-> react/hooks("React Hooks") subgraph Lab Skills react/jsx -.-> lab-38374{{"React の useComponentDidMount フック"}} react/hooks -.-> lab-38374{{"React の useComponentDidMount フック"}} end

ReactのuseComponentDidMountフック

VM内には既にindex.htmlscript.jsが用意されています。一般的には、script.jsstyle.cssにのみコードを追加すればよいです。

コンポーネントがマウントされた直後にコールバック関数を実行するには、useEffect()フックに空の配列を2番目の引数として渡します。これにより、コンポーネントがマウントされたときに提供されたコールバックが1回だけ実行されることが保証されます。以下に示すuseComponentDidMount()関数は、このフックを使って、クラスコンポーネントのcomponentDidMount()ライフサイクルメソッドと同じ動作を実現しています。

const useComponentDidMount = (onMountHandler) => {
  React.useEffect(() => {
    onMountHandler();
  }, []);
};

const Mounter = () => {
  useComponentDidMount(() => console.log("Component did mount"));

  return <div>Check the console!</div>;
};

ReactDOM.createRoot(document.getElementById("root")).render(<Mounter />);

右下隅の「Go Live」をクリックして、ポート8080でウェブサービスを実行してください。その後、Web 8080タブを更新して、ウェブページをプレビューできます。

まとめ

おめでとうございます!あなたはReactのuseComponentDidMountフックの実験を完了しました。あなたの技術を向上させるために、LabExでさらに多くの実験を行って練習してください。