Logo th.boatexistence.com

ทำไม setstate ถึงไม่ตรงกัน?

สารบัญ:

ทำไม setstate ถึงไม่ตรงกัน?
ทำไม setstate ถึงไม่ตรงกัน?
Anonim

ที่เป็นเช่นนี้เพราะ setState เปลี่ยนแปลงสถานะและทำให้เกิดการแสดงซ้ำ นี่อาจเป็นการดำเนินการที่มีราคาแพง และการซิงโครนัสอาจทำให้เบราว์เซอร์ไม่ตอบสนอง ดังนั้นการเรียก setState จึงไม่พร้อมกันและถูกแบทช์เพื่อประสบการณ์และประสิทธิภาพ UI ที่ดีขึ้น

ทำไมเมธอด setState จึงไม่ซิงโครนัส

ในการอัพเดตสถานะของส่วนประกอบ คุณใช้เมธอด setState อย่างไรก็ตาม มันง่ายที่จะลืมไปว่าเมธอด setState เป็นแบบอะซิงโครนัส ทำให้ยากต่อการดีบักปัญหาในโค้ดของคุณ ฟังก์ชัน setState จะไม่ส่งคืน Promise การใช้ async/await หรือสิ่งที่คล้ายกันจะไม่ทำงาน

สามารถ setState ซิงโครนัสได้หรือไม่

อาจฟังดูแปลกๆ แต่ yes setState สามารถทำงานได้พร้อมกันในปฏิกิริยา.

ทำไม setState ถึงล่าช้า

คำอธิบายอย่างเป็นทางการ คิดว่า setState() เป็นคำขอแทนที่จะเป็นคำสั่งในทันทีเพื่ออัปเดตส่วนประกอบ เพื่อประสิทธิภาพในการรับรู้ที่ดีขึ้น React อาจล่าช้า แล้วอัปเดตองค์ประกอบหลายอย่างในครั้งเดียว React ไม่รับประกันว่าการเปลี่ยนแปลงสถานะจะมีผลทันที

React JS ซิงโครนัสหรือไม่ซิงโครนัสหรือไม่

ก่อนอื่น ใช่เลย ไม่พร้อมกัน.

แนะนำ: