Bagaimana untuk melaksanakan acara penutup dalam mod reaksi

藏色散人
Lepaskan: 2022-12-20 11:04:39
asal
2551 orang telah melayarinya

Kaedah mod tindak balas untuk melaksanakan acara penutup: 1. Pantau sasaran acara onclick pelayar; 2. Tentukan klik melalui pernyataan "jika (e.target != messageRef.current) {setMessageCode; (false);}" Peristiwa, jika ia bukan kotak modal, hanya laksanakan acara penutup.

Bagaimana untuk melaksanakan acara penutup dalam mod reaksi

Persekitaran pengendalian tutorial ini: sistem Windows 10, versi react18, komputer Dell G3.

Bagaimana untuk melaksanakan acara penutup dalam mod tindak balas?

Tindak balas klik di tempat lain untuk menutup kotak Modal

Prinsip: Sangat mudah, ia adalah untuk mendengar sasaran acara onclick pelayar, menentukan acara klik dan melaksanakan penutupan acara jika ia bukan kotak modal.

Pemarahan sisi pelayan tidak boleh mendapatkan objek tetingkap dalam useEffect

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

```

Tandatangan fungsi useLayoutEffect adalah sama seperti useEffect, tetapi ia akan digunakan dalam semua Kesan dipanggil serentak selepas DOM berubah. Anda boleh menggunakan ini untuk membaca reka letak DOM dan mencetuskan pemaparan semula secara serentak. Sebelum penyemak imbas melakukan lukisan, pelan kemas kini di dalam useLayoutEffect akan dimuat semula secara serentak.

Pembelajaran yang disyorkan: "tutorial video bertindak balas"

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan acara penutup dalam mod reaksi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan