تخطّى إلى المحتوى الرئيسي
مُحوِّل React في 2026: ما الذي يحفظه في الذاكرة المؤقتة (وما الذي لا يحفظه)

مُحوِّل React في 2026: ما الذي يحفظه في الذاكرة المؤقتة (وما الذي لا يحفظه)

July 12, 2026
هندسة الواجهات الأمامية
2 دقيقة قراءة

النقاط الرئيسية

مُحوِّل React يُدرج الحفظ في الذاكرة المؤقتة تلقائياً — ما يعادل useMemo و useCallback و React.memo — بتحليل تدفق البيانات في مرحلة البناء. لا حاجة لمصفوفات الاعتماديات.

فعِّله في Next.js 15 أو 16 بمفتاح واحد: experimental.reactCompiler: true في next.config.ts.

المُحوِّل يُخزِّن فقط ما يستطيع إثبات أمانه — إذا شكَّ في استقرار قيمة فإنه يتجاوز المكوِّن كلياً.

"use no memo" مسار التجاوز: أضفه أعلى جسم الدالة لتوجيه المُحوِّل بتجاهلها.

شغِّل npx react-compiler-healthcheck@latest قبل التفعيل لمعرفة التغطية والمخالفات.

ما الذي يفعله مُحوِّل React؟

مُحوِّل React — أُطلق بشكل مستقر مع React 19 وكان يُعرف سابقاً بـ React Forget — يُحوِّل كود المكوِّنات والخطافات في مرحلة البناء لإدراج الحفظ في الذاكرة المؤقتة تلقائياً. بدلاً من useMemo مع مصفوفة اعتماديات، يُحلِّل المُحوِّل تدفق البيانات ويُولِّد الكود المكافئ. المُحوِّل هو إضافة Babel تعمل مع أي سلسلة بناء تعتمد عليه.

كيف نُفعِّل المُحوِّل في Next.js؟

اضبط experimental.reactCompiler على true في next.config.ts. قبل التفعيل شغِّل npx react-compiler-healthcheck@latest لمعرفة المكوِّنات القابلة للتحسين والمخالفات. إصلاح المخالفات أولاً يمنح تغطية أوسع من اليوم الأول.

ما الذي يُخزِّنه المُحوِّل؟

ثلاث فئات: المكوِّنات (ما يعادل React.memo)، والقيم داخل المكوِّنات (ما يعادل useMemo)، وردود الفعل (ما يعادل useCallback). تُستنتج الاعتماديات تلقائياً من تحليل تدفق البيانات.

متى يتجاوز المُحوِّل الحفظ؟

يتجاوز المُحوِّل الحفظ عند تغيير الخصائص أو الحالة مباشرةً، أو قراءة مراجع خارجية قابلة للتغيير، أو مخالفة قواعد الخطافات، أو وجود أنماط إعادة إسناد let معقدة.

مسار التجاوز "use no memo"

التعليمة النصية "use no memo" أعلى جسم المكوِّن تُوجِّه المُحوِّل لتجاهله. استخدمها عند خطأ في مخرج المُحوِّل أو عند تغليف مكتبة تعتمد على عدم استقرار المرجع.

هل نحذف useMemo و useCallback بعد التفعيل؟

للحالات التي يتولاها المُحوِّل: نعم في نهاية المطاف. المكوِّنات التي تُشير إليها أداة الفحص كمُحسَّنة آمنة للتنظيف. أبقِ على الحفظ اليدوي للمكوِّنات غير القابلة للتحسين.

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

**س:** هل يعمل بدون Next.js؟

**ج:** نعم. babel-plugin-react-compiler يعمل مع أي سلسلة بناء Babel.

**س:** هل سيُعطِّل المكوِّنات الموجودة؟

**ج:** المُحوِّل آمن — لا يُطبِّق إلا ما يستطيع إثبات صحته ويُصدر ما عداه دون تغيير.

**س:** هل يُحلُّ محلَّ React.memo؟

**ج:** للمكوِّنات القابلة للتحليل الكامل، نعم.

**س:** ما إصدار React المطلوب؟

**ج:** React 19 أو أحدث. لا يعمل على React 18.