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

When memo Adds Wasted Work متى يصبح التغليف عبئاً إضافياً

غلّف المكونات العرضية النقية بدالة React.memo لتخطي إعادة التصيير غير الضرورية عند ثبات الخصائص، وافهم المقارنة السطحية بـ Object.is وتجنب فخ المراجع المضمنة.
3 صفوف تعليمية
ReactJS
0 مشاهدة

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

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

تجنب تغليف كل زر صغير أو شارة نصية بدالة memo() بدافع العادة. فإذا كان المكون خفيفاً جداً أو كانت خصائصه تتغير فعلياً في كل تصيير كعداد الثواني الحي، فإن memo() ستجري حلقة فحص للخصائص ثم تعيد رسم المكون على أي حال، فتتحول إلى عبء إضافي بلا فائدة. يلخص الجدول التالي قرارات الاستخدام السليمة:

حالة المكون الفرعيأثر تغليف React.memoالقرار الهندسي الموصى به
مخطط أو جدول ثقيل بخصائص أولية ثابتةيتخطى إعادة التصيير المكلفة بكفاءة عاليةغلّفه بـ memo وتأكد من النتيجة عبر Profiler
زر بسيط أو شارة نصية خفيفة جداًتكلفة فحص الخصائص تعادل رسم العنصر نفسهاتركه مكوناً دالياً عادياً لنظافة الكود
خصائصه تتغير فعلياً مع كل تصيير للأبيجري المقارنة ثم يعيد الرسم في كل مرةلا تغلفه لأن الفحص يصبح عملاً ضائعاً
يستقبل كائناً مضمناً جديداً في كل رسمتفشل المقارنة السطحية ويعاد الرسم دائماًمرر قيماً أولية أو ثبّت مرجع الكائن أولاً
الصف 2 ملاحظة هامة
الصف 3 ملاحظة هامة
خلاصة المعرفة ومحطة الانتقال

ملخص الدرس

حصاد الدرس

مراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي

ماذا تعلّمت في هذا الدرس؟

تعلمت في هذا الدرس كيف يتخطى تغليف React.memo إعادة التصيير الفائضة بالمقارنة السطحية عبر Object.is، ولماذا تكسر الكائنات المضمنة ثبات المرجع، ومتى يحقق التغليف فائدة حقيقية أو يصبح عبئاً غير مبرر. الخطوة التالية: انتقل الآن إلى الدرس رقم 44 «تخزين الحسابات والدوال عبر useMemo وuseCallback» لمواصلة البناء التراكمي المتدرج في مسار React الحديث.