ホームページ > ウェブフロントエンド > jsチュートリアル > React コンポーネントの外側のクリックを検出するにはどうすればよいですか?

React コンポーネントの外側のクリックを検出するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-06 02:44:09
オリジナル
369 人が閲覧しました

How Can I Detect Clicks Outside a React Component?

React コンポーネント外部のクリックの検出

提示されたシナリオには、特定のコンポーネントの外部で発生するクリック イベントの検出が含まれます。 jQuery の最も近い() メソッドは通常、クリック イベント ターゲットがコンポーネントの DOM 要素を親として持っているかどうかをチェックし、コンポーネント内のクリックを示します。

ES6 実装

提供されるES6 ソリューションは、引数として ref を取る useOutsideAlerter フックを利用します。フック内で、クリック ハンドラーがドキュメントに追加されます。クリックが発生すると、ターゲットが参照の現在の要素に対してチェックされます。ターゲットがコンポーネント内に含まれていない場合、アラートが表示されます。

OutsideAlerter コンポーネントは子コンテンツをラップし、そのコンテナの参照にフックを適用します。コンテナの外側をクリックすると、アラートがトリガーされます。

クラスベースの実装 (React 16.3 以降)

この実装では、OutsideAlerter コンポーネントはコンポーネントを拡張し、ライフサイクルを定義します。方法。 ComponentDidMount メソッドとcomponentWillUnmount メソッドは、それぞれドキュメントにクリック ハンドラーを追加および削除します。 handleClickOutside メソッドは、コンポーネントの外側のクリックをチェックし、必要に応じてアラートを表示します。

クラスベースの実装 (React 16.3 より前)

以前は、わずかに異なるアプローチが使用されています。 React 16.3 へ。コンポーネントには、ラッパーの参照を設定する setWrapperRef メソッドがあります。 handleClickOutside メソッドは、コンポーネントの外側のクリックをチェックし、必要に応じてアラートを表示します。

実装に関係なく、これらのソリューションにより、特定の React コンポーネントの外側のクリック イベントを検出できるようになり、ユーザー インタラクションの制御が強化されます。

以上がReact コンポーネントの外側のクリックを検出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート