--- id: 5a24c314108439a4d403614b title: Create a Redux Store challengeType: 6 isRequired: false videoUrl: '' localeTitle: قم بإنشاء مخزن Redux --- ## Description
Redux هو إطار عمل لإدارة الولاية يمكن استخدامه مع عدد من تقنيات الويب المختلفة ، بما في ذلك React. في Redux ، يوجد كائن حالة مفرد مسؤول عن الحالة الكاملة للتطبيق. وهذا يعني أنه إذا كان لديك تطبيق React مع عشرة مكونات ، وكان لكل مكون حالته المحلية الخاصة ، فسيتم تحديد الحالة الكاملة لتطبيقك بواسطة كائن حالة واحد موجود في store Redux. هذا هو أول مبدأ مهم لفهمه عند تعلم Redux: مخزن Redux هو المصدر الوحيد للحقيقة عندما يتعلق الأمر بحالة التطبيق. وهذا يعني أيضًا أنه في أي وقت تريد فيه أي من تطبيقاتك تحديث الحالة ، يجب أن تفعل ذلك من خلال متجر Redux. يسهّل تدفق البيانات أحادي الاتجاه تتبع إدارة الحالة في تطبيقك.
## Instructions
store Redux هو كائن يحتفظ ويدير state التطبيق. توجد طريقة تسمى createStore() على الكائن Redux ، والتي تستخدمها لإنشاء store Redux. تأخذ هذه الطريقة وظيفة reducer كوسيطة مطلوبة. يتم تغطية وظيفة reducer في تحدٍ لاحق ، ويتم تحديدها بالفعل لك في محرر الشفرة. انها ببساطة تأخذ state كحجة وعودة state . قم بتعريف متغير store وقم بتعيينه إلى أسلوب createStore() ، يمر في reducer كوسيطة. ملاحظة: تستخدم الشفرة في برنامج التحرير صيغة الوسيطة الافتراضية لـ ES6 لتهيئة هذه الحالة للاحتفاظ بقيمة 5 . إذا لم تكن تعرف الحجج الافتراضية ، يمكنك الرجوع إلى قسم ES6 في المنهج الدراسي الذي يغطي هذا الموضوع.
## Tests
```yml tests: - text: يوجد مخزن redux. testString: 'assert(typeof store.getState === "function", "The redux store exists.");' - text: يحتوي مخزن redux على قيمة 5 للحالة. testString: 'assert(store.getState()=== 5, "The redux store has a value of 5 for the state.");' ```
## Challenge Seed
```jsx const reducer = (state = 5) => { return state; } // Redux methods are available from a Redux object // For example: Redux.createStore() // Define the store here: ```
## Solution
```js // solution required ```