Skip to content

Commit 5f8d5de

Browse files
committed
Внесено зміни з PR
1 parent 6ecd12a commit 5f8d5de

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

src/content/reference/react/useEffectEvent.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ title: useEffectEvent
44

55
<Intro>
66

7-
`useEffectEvent` це Хук React, який дозволяє винести **нереактивну логіку** з ваших Ефектів у функцію, яку можна використовувати повторно, — так звану [**Подію Ефекту**](/learn/separating-events-from-effects#declaring-an-effect-event).
7+
`useEffectEvent` це хук React, який дає змогу винести **нереактивну логіку** з ваших ефектів у функцію, яку можна використовувати повторно, — так звану [**Подію ефекту**](/learn/separating-events-from-effects#declaring-an-effect-event).
88

99
```js
1010
const onSomething = useEffectEvent(callback)
@@ -18,7 +18,7 @@ const onSomething = useEffectEvent(callback)
1818

1919
### `useEffectEvent(callback)` {/*useeffectevent*/}
2020

21-
Викликайте `useEffectEvent` на верхньому рівні вашого компонента, щоб оголосити Подію Ефекту. Події Ефекту — це функції, які ви можете викликати всередині Ефектів, таких як `useEffect`:
21+
Викликайте `useEffectEvent` на верхньому рівні вашого компонента, щоб оголосити Подію ефекту. Події ефекту — це функції, які ви можете викликати всередині ефектів, таких як `useEffect`:
2222

2323
```js {4-6,11}
2424
import { useEffectEvent, useEffect } from 'react';
@@ -45,16 +45,16 @@ function ChatRoom({ roomId, theme }) {
4545

4646
#### Параметри {/*parameters*/}
4747

48-
- `callback`: Функція, що містить логіку для вашої Події Ефекту. Коли ви визначаєте Подію Ефекту за допомогою `useEffectEvent`, `callback` **завжди** матиме доступ до **найновіших** значень із пропсів і стану, коли він викликається. Це допомагає уникнути проблем із "застарілими замиканнями" (stale closures).
48+
- `callback`: Функція, що містить логіку для вашої Події ефекту. Коли ви визначаєте Подію ефекту за допомогою `useEffectEvent`, `callback` **завжди** матиме доступ до **найновіших** значень із пропсів і стану, коли він викликається. Це допомагає уникнути проблем із "застарілими замиканнями" (stale closures).
4949

5050
#### Повертає {/*returns*/}
5151

52-
Повертає функцію Події Ефекту. Ви можете викликати цю функцію всередині `useEffect`, `useLayoutEffect` або `useInsertionEffect`.
52+
Повертає функцію Події ефекту. Ви можете викликати цю функцію всередині `useEffect`, `useLayoutEffect` або `useInsertionEffect`.
5353

5454
#### Застереження {/*caveats*/}
5555

56-
- **Викликайте лише всередині Ефектів:** Події Ефекту слід викликати лише в Ефектах. Визначайте їх безпосередньо перед Ефектом, який їх використовує. Не передавайте їх іншим компонентам або Хукам. Лінтер [`eslint-plugin-react-hooks`](/reference/eslint-plugin-react-hooks) (версія 6.1.1 або вище) забезпечить дотримання цього обмеження, щоб запобігти виклику Подій Ефекту в неправильному контексті.
57-
- **Це не скорочення для залежностей:** Не використовуйте `useEffectEvent`, щоб уникнути зазначення залежностей у масиві залежностей вашого Ефекту. Це може приховати помилки та ускладнити розуміння вашого коду. Віддайте перевагу явним залежностям або використовуйте refs для порівняння попередніх значень, якщо це необхідно.
56+
- **Викликайте лише всередині ефектів:** Події ефекту слід викликати лише в ефектах. Визначайте їх безпосередньо перед ефектом, який їх використовує. Не передавайте їх іншим компонентам або хукам. Лінтер [`eslint-plugin-react-hooks`](/reference/eslint-plugin-react-hooks) (версія 6.1.1 або вище) забезпечить дотримання цього обмеження, щоб запобігти виклику Подій ефекту в неправильному контексті.
57+
- **Це не скорочення для залежностей:** Не використовуйте `useEffectEvent`, щоб уникнути зазначення залежностей у масиві залежностей вашого ефекту. Це може приховати помилки та ускладнити розуміння вашого коду. Віддайте перевагу явним залежностям або використовуйте refs для порівняння попередніх значень, якщо це необхідно.
5858
- **Використовуйте для нереактивної логіки:** Використовуйте `useEffectEvent` лише для винесення логіки, яка **не залежить** від зміни значень.
5959

6060
___
@@ -63,11 +63,11 @@ ___
6363

6464
### Зчитування найновіших пропсів і стану {/*reading-the-latest-props-and-state*/}
6565

66-
Зазвичай, коли ви отримуєте доступ до реактивного значення всередині Ефекту, ви повинні включити його до масиву залежностей. Це гарантує, що ваш Ефект знову запуститься, коли це значення зміниться, що зазвичай є бажаною поведінкою.
66+
Зазвичай, коли ви отримуєте доступ до реактивного значення всередині ефекту, ви повинні включити його до масиву залежностей. Це гарантує, що ваш ефект знову запуститься, коли це значення зміниться, що зазвичай є бажаною поведінкою.
6767

68-
Але в деяких випадках ви можете захотіти прочитати найновіші пропси або стан всередині Ефекту, не викликаючи повторного запуску Ефекту при зміні цих значень.
68+
Але в деяких випадках ви можете захотіти прочитати найновіші пропси або стан всередині ефекту, не викликаючи повторного запуску ефекту при зміні цих значень.
6969

70-
Щоб [прочитати найновіші пропси або стан](/learn/separating-events-from-effects#reading-latest-props-and-state-with-effect-events) у вашому Ефекті, не роблячи ці значення реактивними, включіть їх у Подію Ефекту.
70+
Щоб [прочитати найновіші пропси або стан](/learn/separating-events-from-effects#reading-latest-props-and-state-with-effect-events) у вашому ефекті, не роблячи ці значення реактивними, включіть їх у Подію ефекту.
7171

7272
```js {7-9,12}
7373
import { useEffect, useContext, useEffectEvent } from 'react';
@@ -88,6 +88,6 @@ function Page({ url }) {
8888
}
8989
```
9090

91-
У цьому прикладі Ефект повинен повторно запуститися після рендерингу, коли змінюється `url` (щоб зафіксувати відвідування нової сторінки), але він **не** повинен повторно запускатися, коли змінюється `numberOfItems`. Загорнувши логіку логування в Подію Ефекту, `numberOfItems` стає **нереактивним**. Він завжди береться з найновішого значення без запуску Ефекту.
91+
У цьому прикладі ефект повинен повторно запуститися після рендерингу, коли змінюється `url` (щоб зафіксувати відвідування нової сторінки), але він **не** повинен повторно запускатися, коли змінюється `numberOfItems`. Загорнувши логіку логування в Подію ефекту, `numberOfItems` стає **нереактивним**. Він завжди береться з найновішого значення без запуску ефекту.
9292

93-
Ви можете передати реактивні значення, як-от `url`, як аргументи до Події Ефекту, щоб зберегти їх реактивними, отримуючи доступ до найновіших нереактивних значень всередині події.
93+
Ви можете передати реактивні значення, як-от `url`, як аргументи до Події ефекту, щоб зберегти їх реактивними, отримуючи доступ до найновіших нереактивних значень всередині події.

0 commit comments

Comments
 (0)