56 lines
2.2 KiB
Markdown
56 lines
2.2 KiB
Markdown
---
|
||
id: 5a24c314108439a4d403614d
|
||
title: Визначення дії Redux
|
||
challengeType: 6
|
||
forumTopicId: 301440
|
||
dashedName: define-a-redux-action
|
||
---
|
||
|
||
# --description--
|
||
|
||
Оскільки Redux це фреймворк керування станами, оновлення стану є одним з його основних завдань. В Redux, всі оновлення стану запускаються при відправленні дій. Дія це просто JavaScript об'єкт, який містить інформацію про дію, що відбулася. Redux сховище отримує ці об'єкти дій, а потім оновлює стан відповідно. Інколи дія Redux також містить певні дані. Наприклад, дія може містити ім'я користувача після його входу. У той час як дані необов'язкові, дії можуть містити властивість `type`, яка визначає 'тип' дії, що відбулася.
|
||
|
||
Вважайте дії Redux як месенджери, які доставляють інформацію про події, що відбуваються у вашому додатку до сховища Redux. Після чого сховище здійснює оновлення стану на основі дії, що відбулася.
|
||
|
||
# --instructions--
|
||
|
||
Написання дії Redux є таким же простим, як і декларація об'єкта за допомогою типової властивості. Вкажіть об'єкт `action` і надайте йому властивість `type` встановіть рядок `'LOGIN'`.
|
||
|
||
# --hints--
|
||
|
||
Об'єкт `action` повинен існувати.
|
||
|
||
```js
|
||
assert(
|
||
(function () {
|
||
return typeof action === 'object';
|
||
})()
|
||
);
|
||
```
|
||
|
||
Об'єкт `action` повинен мати властивість ключа `type` зі значенням `LOGIN`.
|
||
|
||
```js
|
||
assert(
|
||
(function () {
|
||
return action.type === 'LOGIN';
|
||
})()
|
||
);
|
||
```
|
||
|
||
# --seed--
|
||
|
||
## --seed-contents--
|
||
|
||
```js
|
||
// Define an action here:
|
||
```
|
||
|
||
# --solutions--
|
||
|
||
```js
|
||
const action = {
|
||
type: 'LOGIN'
|
||
}
|
||
```
|