Топ питань
Часова шкала
Чат
Перспективи

Redux

бібліотека JavaScript З Вікіпедії, вільної енциклопедії

Remove ads

Redux відкрита JavaScript бібліотека призначена для керування станом програм JavaScript[3]. Найчастіше використовується разом з React або Angular для побудови інтерфейсів користувача.

Коротка інформація Тип, Автор ...
Remove ads

Історія

Redux був створений Деном Абрамовим і Ендрю Кларком у 2015 році.[1] Redux був створений під впливом Flux, розробленого Facebook, і під впливом функційної мови програмування Elm.[4]

Redux — це контейнер станів для застосунків JavaScript. Він допомагає розробникам оптимізувати код програми. Крім того, він забезпечує вдосконалення досвіду розробника, наприклад, редагування живого коду в поєднанні з відладчиком, що працює під час роботи.

Redux можна використовувати разом із React або іншими бібліотеками. Розмір файлу Redux невеликий, 2kB, включаючи залежності.[5]

Remove ads

Основна концепція

Узагальнити
Перспектива

Єдине джерело істини

Redux зберігає стан всього застосунку в дереві об'єктів в одному сховищі. Одне дерево станів полегшує налагодження або перевірку програми; це також дозволяє зберігати стан вашого застосунку в процесі розробки, для прискорення циклу розробки.

Стор (Store) — це об'єкт, який з'єднує екшени, які представляють факт того, що «щось сталося» і редюсери, які оновлюють стан (state) відповідно до цих екшинів разом.

  • Стор містить стан додатку (application state);
  • надає доступ до стану за допомогою getState()
  • може випускати оновлення стану за допомогою dispatch(action)
  • обробляє скасування реєстрації слухачів за допомогою функції, що повертається subscribe(listener).[6]

Стан призначений тільки для читання

Єдиний спосіб змінити стан — це виокремити дію, об'єкт, що описує те, що сталося. Це гарантує, що ні перегляди, ні зворотні виклики мережі ніколи не будуть змінювати стан. Натомість вони виражають тільки намір це зробити. Всі зміни — централізовані і відбуваються одна за іншою у чіткій послідовності. Оскільки дії є простими об'єктами, вони можуть бути зареєстровані, серіалізовані, збережені та пізніше відтворені для налагодження або тестування.

Екшени — це структури, які передають дані з застосування в стан. Вони є єдиними джерелами інформації для стану. Redux відправляє їх у стор, використовуючи метод store.dispatch().[7]

Зміни за допомогою чистих функцій

Редьюсери (reducers) — це лише чисті функції, які приймають попередній стан і дію тобто state, і повертають наступний стан. Редюсери визначають, як стан додатки змінюється у відповідь на екшени (action), які відправлені в стан. Екшени тільки описують, що сталося, але не описують, як змінюється стан додатка.[8]

В процесі розробки редьюсери можуть бути розділені на дрібніші редьюсери, які керують певними частинами дерева станів. Оскільки редьюсери — це лише функції, ви можете контролювати порядок їх надсилання, передавати додаткові дані або навіть створювати повторювані редьюсери для звичайних завдань, таких як розбиття на сторінки.

Remove ads

Примітки

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads