شرح صفوف ومحتوى الفقرة
تقع الحلقة اللانهائية (Infinite Loop) عندما يحدّث التأثير متغير حالة بلا شرط بينما يدرج المتغير نفسه في اعتمادياته — مثل كتابة setCount(count + 1) مع الاعتماد على [count] أو نسيان مصفوفة الاعتماديات كلياً؛ فكل تحديث يشعل تصييراً يشغل التأثير من جديد بلا توقف.
امنع الحلقات بجعل التأثير يكتب إلى النظام الخارجي كـ localStorage باتجاه واحد منظم، أو باستخدام دالة التحديث المعتمدة على القيمة السابقة عند الضرورة.
HTML
const [fontScale, setFontScale] = useState(16);
useEffect(() => {
try {
const val = String(fontScale);
localStorage.setItem('ct_font_px', val);
} catch {}
}, [fontScale]);