انتقل إلى محتوى الدرس

Returning the Cleanup Function إرجاع دالة التنظيف من التأثير

اكتب دوال التنظيف داخل useEffect لإلغاء المؤقتات ومستمعي أحداث النافذة ومنع تسرب الذاكرة، وافهم دورة المزامنة وفحص المتانة في الوضع الصارم StrictMode.
3 صفوف تعليمية
ReactJS
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

لإيقاف أي تأثير مستمر بنظافة، أعِد دالة تنظيف (Cleanup Function) من نهاية دالة useEffect بالشكل return () => { ... }. تستدعي React دالة التنظيف هذه تلقائياً في موضعين دقيقين:

  1. قبل إعادة تشغيل التأثير: عند تغير إحدى الاعتماديات تنفذ React تنظيف الدورة السابقة بقيمها القديمة أولاً قبل بدء الإعداد الجديد.
  2. عند إزالة المكون (Unmount): مرة أخيرة فور اختفاء المكون من شجرة الواجهة.
الصف 2 كود برمجي
HTML
useEffect(() => {
  onLog('+ Connected to #' + room);
  return () => {
    onLog('- Disconnected from #' + room);
  };
}, [room]);
الصف 3 معاينة حية