0Pricing
Sveltejs Academy · درس

دالة التنظيف destroy()

أعد دالة destroy من إجراء لتنظيف مستمعي الأحداث والمراقبين

دالة التنظيف destroy() درس مجاني في Sveltejs Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Sveltejs Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Sveltejs Academy 4 دروس في المجموع.

لماذا التنظيف

غالبًا ما تضيف الإجراءات مستمعات أو مراقبات. يمنع التنظيف تسرّبات الذاكرة عند إلغاء تركيب العنصر.

إرجاع destroy

يمكن للإجراء إرجاع كائن يتضمن دالة destroy(). تستدعيها Svelte عند إلغاء التركيب.

function listen(node) {
  function onClick() { /* ... */ }
  node.addEventListener("click", onClick);
  return { destroy() { node.removeEventListener("click", onClick); } };
}

اربطه بالموارد

يجب تحرير أي مورد تخصصونه، مثل المستمعات والمراقبات والمؤقتات، داخل destroy.

destroy آمن عند التكرار

يُستدعى destroy مرة واحدة. ومع ذلك، اكتبوه بطريقة دفاعية تحسبًا لتكرار إلغاء التركيب.

الجمع بين update وdestroy

أعيدوهما معًا لإدارة دورة الحياة كاملة: الاستجابة لتغيّرات المعاملات والتنظيف عند إلغاء التركيب.

المراقبات

أوقفوا وافصلوا IntersectionObservers وResizeObservers وMutationObservers داخل destroy.

إطارات الرسوم المتحركة

ألغوا أي حلقات معلقة من requestAnimationFrame لتجنب العمل المهدَر.

التنظيف غير المتزامن

يمكن أن يكون destroy متزامنًا. إذا احتجتم إلى تنظيف غير متزامن، فشغّلوا مهام التنظيف دون انتظار نتيجتها.

تحليل الذاكرة

استخدموا أدوات الذاكرة في المتصفح للتأكد من أن الإجراءات تحرر المراجع بعد إلغاء التركيب.

أنواع TypeScript

نوع الإرجاع هو ActionReturn<Params> من svelte/action.

خطأ شائع

يؤدي نسيان إرجاع destroy إلى إبقاء المستمعات مرفقة بعد زوال العنصر. احرصوا دائمًا على إقران الإضافة بالإزالة.

تحقق سريع

متى يُستدعى destroy؟

خلاصة

أعيدوا { destroy } من الإجراء لتنظيف المستمعات والمراقبات عند إلغاء التركيب.

الأسئلة الشائعة

هل درس «دالة التنظيف destroy()» مجاني؟

نعم — نص درس «دالة التنظيف destroy()» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Sveltejs Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Sveltejs Academy 4 دروس في المجموع.

ماذا ستتعلم في «دالة التنظيف destroy()»؟

أعد دالة destroy من إجراء لتنظيف مستمعي الأحداث والمراقبين تتمرن على Sveltejs Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Sveltejs Academy؟

لا تُشترط خبرة سابقة. Sveltejs Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «دالة التنظيف destroy()»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Sveltejs Academy هذا؟

نعم. كل درس في Sveltejs Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. صيغة توجيه use:
  2. معلمات الإجراءات وتحديثاتها
  3. دالة التنظيف destroy()
  4. إجراءات عملية: clickOutside وtooltip وautofocus
← العودة إلى Sveltejs Academy