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

Dispatching from Deep Children إرسال الأوامر من المكونات العميقة

ارتقِ بهندسة إدارة الحالة في تطبيقات React الكبيرة عبر دمج useReducer مع سياقين منفصلين للقراءة والإرسال لتمكين المكونات العميقة من التحديث المباشر بنظافة.
3 صفوف تعليمية
ReactJS
0 مشاهدة

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

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

بمجرد تغليف شجرة الميزة بوسم <TasksProvider>، يستطيع أي مكون فرعي عميق إرسال تحديثاته باستقلالية تامة. يقرأ شريط الإضافة useContext(TasksDispatchContext) لإرسال أمر added، بينما يرسل كل سطر مهمة أوامر toggled أو deleted مباشرة بمعرف المهمة id.

لاحظ التوازن الهندسي الدقيق هنا: تبقى مسودة النص المؤقتة التي يكتبها المستخدم داخل حقل الإدخال في useState محلي داخل شريط الإضافة، بينما تنتقل قائمة المهام المشتركة فقط إلى سياق المخفض عند الضغط على زر الإضافة.

الصف 2 كود برمجي
HTML
function AddTaskButton() {
  const dispatch = useContext(TasksDispatchContext);
  function handleAdd() {
    dispatch({
      type: 'added',
      id: Date.now(),
      title: 'Review Context Pattern',
    });
  }
  return <button onClick={handleAdd}>Add Task</button>;
}
الصف 3 ملاحظة هامة