เอฟเฟกต์ใน React
ก่อนที่จะพิจารณาการใช้ฮุค
useEffect เราจำเป็นต้องเข้าใจก่อนว่า
เอฟเฟกต์ใน React คืออะไร
เอฟเฟกต์ หรือ เอฟเฟกต์ข้างเคียง (side effects) คือ การดำเนินการเพิ่มเติมที่ช่วยให้ คอมโพเนนต์สามารถเชื่อมต่อและซิงโครไนซ์ กับ ระบบภายนอก ได้
ระบบภายนอก หมายถึง ส่วนของโค้ดหรือแอปพลิเคชัน ที่อยู่นอกเหนือการควบคุมของ React ซึ่งรวมถึงการทำงานกับเครือข่าย DOM ของเบราว์เซอร์ แอนิเมชัน วิตเจ็ตที่เขียน โดยใช้ไลบรารี UI ของบุคคลที่สาม และ แอปพลิเคชันอื่นๆ ที่สร้างไม่ใช่ด้วย React
เอฟเฟกต์ช่วยให้สามารถรันโค้ดหลัง การเรนเดอร์ได้ จึงเปิดโอกาส ให้ซิงโครไนซ์คอมโพเนนต์ของคุณ กับระบบดังกล่าวที่อยู่นอกเหนือ React ได้
เอฟเฟกต์สามารถทำงานในช่วงเวลา การเรนเดอร์ครั้งแรกของคอมโพเนนต์ ขณะที่ค่าที่ถูกเฝ้าสังเกตเปลี่ยนแปลง หรือเมื่อวงจรชีวิตของคอมโพเนนต์สิ้นสุดลง
ต้องจำไว้ว่า เอฟเฟกต์ คือ เหมือน "ทางออกฉุกเฉิน" ออกจาก React ไม่ควรใช้มันในทางที่ผิด