ホームページ  >  記事  >  ウェブフロントエンド  >  Reactモーダルで終了イベントを実装する方法

Reactモーダルで終了イベントを実装する方法

藏色散人
藏色散人オリジナル
2022-12-20 11:04:392530ブラウズ

React モーダル メソッドを使用して終了イベントを実装します: 1. ブラウザの onclick イベントのターゲットをリッスンします; 2. 「if (e.target != messageRef.current) {setMessageCode(false)」を通じてクリックを判断します。 ;}" ステートメント イベント。モーダル ボックスでない場合は、終了イベントを実行するだけです。

Reactモーダルで終了イベントを実装する方法

#このチュートリアルの動作環境: Windows 10 システム、react18 バージョン、Dell G3 コンピューター。

反応モーダルで終了イベントを実装するにはどうすればよいですか?

reactどこか別の場所をクリックしてモーダル ボックスを閉じます

原則: 非常に単純です。ブラウザの onclick イベントのターゲットをリッスンし、クリック イベントを決定し、閉じるイベントを実行します。モーダルボックスでない場合はイベント。

サーバー側レンダリングで useEffect のウィンドウ オブジェクトを取得できません

useLayoutEffect(() => {
    window.addEventListener("click", (e) => {
      if (e.target != messageRef.current) {
        setMessageCode(false);
      }
    });
  }, []);```
const messageRef = useRef(null);

```

useLayoutEffect の関数シグネチャは useEffect と同じですが、後で同期されますすべての DOM 変更コール効果。これを使用して DOM レイアウトを読み取り、再レンダリングを同期的にトリガーできます。ブラウザーが描画を実行する前に、useLayoutEffect 内の更新プランが同期的に更新されます。

推奨される学習: 「react ビデオ チュートリアル

以上がReactモーダルで終了イベントを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。