Keadaan dalam penggunaanImperativeHandle tidak berterusan
P粉786800174
P粉786800174 2024-04-01 00:20:12
0
1
324

Andaikan saya berada dalam situasi ini:

const [data, setData] = useState([]);

dan masukkan ke dalam useImperativeHandle seperti ini:

useImperativeHandle(ref, () => ({
   data,
}));

Apabila saya menggunakan useEffect untuk menjejaki jika keadaan berubah seperti ini:

useEffect(() => {
   console.log(componentRef.current.data);
}, [componentRef.current.data])

Tak berkesan cuma kalau check manual macam ada butang onClick akan print kalau tak stateful. Kenapa ini terjadi? Adakah terdapat cara lain untuk menjadikannya berfungsi? Atau adakah ia satu-satunya cara untuk memindahkan keadaan kepada ibu bapa?

P粉786800174
P粉786800174

membalas semua(1)
P粉674999420

Komponen

useEffect 不是反应式的。它不跟踪事物。它只是比较渲染之间的依赖关系,如果有差异,它就会执行给定的回调。具有 useEffect harus memaparkan semula untuk melaksanakan fungsi ini.

Apa yang boleh anda lakukan ialah menyampaikan panggilan balik daripada ibu bapa kepada anak supaya anak boleh memanggilnya apabila ia bertukar keadaan

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!