--- id: 5a24c314108439a4d403614b title: Створення сховища Redux challengeType: 6 forumTopicId: 301439 dashedName: create-a-redux-store --- # --description-- Redux - це фреймворк керування станами, який може використовуватися з низкою різних веб-технологій, включно із React. У Redux є єдиний об'єкт стану, який відповідає за стан усього вашого застосунку. Це означає, що якщо б у вас був застосунок на React з десятьма компонентами, і кожен компонент мав би власний внутрішній стан, то увесь стан вашого застосунку визначався б по єдиному об'єкту стану, розміщеному на Redux `store` (сховищі). Це і є перший важливий принцип, який слід зрозуміти під час вивчення Redux: сховище Redux - це єдине джерело достовірних даних, коли йдеться про стан застосунку. Це також означає, що, якщо у будь-який час, будь-яка частина вашого застосунку забажає оновити стан, то вона **має** зробити це через сховище Redux. Односпрямований потік даних дозволяє значно легше відстежувати управління станом у вашому застосунку. # --instructions-- Redux `store` (сховище) - це об'єкт, який містить та скеровує `state` (стан) застосунку. Цей метод має назву `createStore()` на об'єкті Redux, який ви використовуєте, щоб створити `store` (сховище) Redux. Цей метод використовує функцію `reducer` як необхідний аргумент. Функція `reducer` розкривається в наступних завданнях та вже визначена для вас в редакторі коду. Вона просто бере `state` як аргумент та повертає `state`. Вкажіть `store` змінною та призначте її методу `createStore()`, передавши у `reducer` як аргумент. **Примітка:** код в редакторі за замовчуванням використовує синтаксис аргументів ES6 для ініціалізаціїї цього стану для утримання значення `5`. Якщо ви не знайомі з аргументами за замовчуванням, ви можете дізнатися більше у [секції ES6 в Навчальному плані ](https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/es6/set-default-parameters-for-your-functions), що охоплює цю тему. # --hints-- Повинно існувати сховище Redux. ```js assert(typeof store.getState === 'function'); ``` Сховище Redux повинно мати значення 5 для стану. ```js assert(store.getState() === 5); ``` # --seed-- ## --seed-contents-- ```js const reducer = (state = 5) => { return state; } // Redux methods are available from a Redux object // For example: Redux.createStore() // Define the store here: ``` # --solutions-- ```js const reducer = (state = 5) => { return state; } const store = Redux.createStore(reducer); ```