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

Actions and Pure Reducer Model نموذج الأوامر ودالة المخفض

تعلّم تجميع انتقالات الحالة المتشعبة في دالة مخفض reducer نقية باستخدام خطاف useReducer في React، وإرسال أوامر dispatch واضحة، ومتى تتفوق على useState.
4 صفوف تعليمية
ReactJS
0 مشاهدة

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

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

بدلاً من تعديل الحالة مباشرة داخل الأزرار، ترسل معالجات الأحداث كائن أمر (Action Object) عبر دالة الإرسال. يمثل كائن الأمر سجلاً نصياً صريحاً يحمل خاصية type لوصف الحدث الذي وقع مثل { type: 'incremented' } أو { type: 'reset' }.

تمرر مكتبة React الحالة الراهنة state مع كائن الأمر action إلى دالة reducer(state, action) التي تتولى حساب الحالة التالية وإرجاعها بأمان.

الصف 2 كود برمجي
HTML
function counterReducer(state, action) {
  if (action.type === 'incremented') {
    return { count: state.count + 1 };
  }
  if (action.type === 'reset') {
    return { count: 0 };
  }
  throw new Error('Unknown: ' + action.type);
}
الصف 3 معاينة حية
الصف 4 ملاحظة هامة