Qraft(クラフト) 資格・学習クイズアプリ

React入門 練習問題 19:カスタムフック:命名規則

Reactにおいてカスタムフック(=コンポーネント間でロジックを再利用するための独自関数)を作成する際の命名規則として正しいものはどれか。

  1. 関数名の先頭に「use」という接頭辞を付ける
  2. 関数名の先頭に「hook」という接頭辞を付ける
  3. 関数名は大文字で始めコンポーネント名と同じ規則にする
  4. 関数名の末尾に「Hook」という接尾辞を付ける
  5. 関数名にはアンダースコアを必ず含める

Qraftユーザーの成績:難易度 Dランク(レーティング1150)・正答率 69%(9/13回正解)
レーティングは解いた人の実力と正誤から算出する難しさ(初期値1200)。ランクはその全問題中の順位(S+が最難関、F-が最易)

正解と解説を見る
正解:関数名の先頭に「use」という接頭辞を付ける

Reactの規約では、カスタムフックの関数名は必ず「use」から始める必要があり、これによりReactのLintルールが正しくフックのルールを検証できるようになる。

【正解の理由】
関数名を「use」で始めることで、React本体やESLintのプラグインがその関数をフックとして認識し、フックの呼び出しルール(条件分岐内で呼ばないなど)を静的にチェックできるようになる。

【不正解の理由】
• 「hookという接頭辞を付ける」:Reactの規約で定められた実際の命名規則ではなく、フックとして認識されない
• 「大文字で始めコンポーネント名と同じ規則にする」:大文字始まりはコンポーネントの命名規則であり、フックとは区別する必要がある
• 「末尾にHookという接尾辞を付ける」:Reactの規約で定められた実際の命名規則ではなく、フックとして認識されない
• 「アンダースコアを必ず含める」:Reactのフック認識とは無関係であり、規約として定められていない

← 前の問題問題一覧次の問題 →
アプリで解いてレーティングを上げる(無料・登録不要)