Skip to content

Commit e25e5ec

Browse files
Apply suggestions from code review
Co-authored-by: Alina Listunova <alinkedd@users.noreply.github.com>
1 parent 669e6e3 commit e25e5ec

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

src/content/reference/react/useContext.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ const value = useContext(SomeContext)
1616

1717
---
1818

19-
## Довідка {/*reference*/}
19+
## Опис {/*reference*/}
2020

2121
### `useContext(SomeContext)` {/*usecontext*/}
2222

23-
Викличте `useContext` на верхньому рівні компонента щоб прочитати та підписатися на [контекст.](/learn/passing-data-deeply-with-context)
23+
Викличте `useContext` на верхньому рівні компонента, щоб прочитати та підписатися на [контекст.](/learn/passing-data-deeply-with-context)
2424

2525
```js
2626
import { useContext } from 'react';
@@ -30,21 +30,21 @@ function MyComponent() {
3030
// ...
3131
```
3232
33-
[Дивіться інші приклади.](#usage)
33+
[Перегляньте більше прикладів нижче.](#usage)
3434
3535
#### Параметри {/*parameters*/}
3636
37-
* `SomeContext`: це об'єкт контексту, який було створено за допомогою функції [`createContext`](/reference/react/createContext). Контекст безпосередньо не містить інформацію, він лише визначає що ви можете передати або отримати з компонентів.
37+
* `SomeContext`: це об'єкт контексту, який було створено за допомогою функції [`createContext`](/reference/react/createContext). Контекст безпосередньо не містить інформацію, він лише визначає, що ви можете передати або отримати з компонентів.
3838
39-
#### Повернення {/*returns*/}
39+
#### Результат {/*returns*/}
4040
41-
Викликаючи `useContext`, ви отримуєте значення (`value`), яке відповідає контексту компонента, що викликає цей хук. Це значення визначається як `value`, передане найближчому `SomeContext.Provider`, розташованому вище в ієрархії компонентів від компонента, що використовує цей контекст. Якщо такого провайдера немає, повертається значення `defaultValue`, яке ви передали функції [`createContext`](/reference/react/createContext). Повернуте значення завжди актуальне. React автоматично повторно рендерить усі компоненти, що використовують контекст, якщо значення контексту змінюється.
41+
`useContext` повертає значення контексту для компонента, що викликає цей хук. Це значення визначається як `value`, передане найближчому `SomeContext.Provider`, розташованому вище деревом відносно поточного компонента. Якщо такого провайдера немає, повертається значення `defaultValue`, яке ви передали функції [`createContext`](/reference/react/createContext). Повернуте значення завжди актуальне. React автоматично повторно рендерить усі компоненти, що використовують контекст, якщо значення контексту змінюється.
4242
43-
#### Особливості {/*caveats*/}
43+
#### Застереження {/*caveats*/}
4444
45-
* Виклик `useContext()` не бачить значення контексту, яке визначається або змінюється у *цьому ж* компоненті. Відповідний `<Context.Provider>` **повинен бути розташований *вище*** компонента, що викликає `useContext()`.
45+
* Eлементи-провайдери не впливають на виклик `useContext()` у компоненті, з якого й повертаються. Відповідний `<Context.Provider>` **повинен бути розташований *вище*** компонента, що викликає `useContext()`.
4646
* React **автоматично оновлює** всі дочірні компоненти, які використовують певний контекст, починаючи з провайдера, що отримує змінене значення `value`. Попереднє та наступне значення порівнюються за допомогою [`Object.is`](https://webdoky.org/uk/docs/Web/JavaScript/Reference/Global_Objects/Object/is/). Пропуск повторних рендерів за допомогою [`memo`](/reference/react/memo) не заважає дочірнім компонентам отримувати оновлене значення контексту.
47-
* Якщо ваша система збірки створює дублікати модулів у вихідному коді (що може статися через симлінки), це може порушити контекст. Передача через контекст працює тільки у випадку, якщо `SomeContext`, що використовується для надання контексту, та `SomeContext`, для його зчитування, є ***точно* тим самим об'єктом**, що визначається порівнянням `===`.
47+
* Якщо ваша система збірки створює дублікати модулів у вихідному коді (що може статися через символьні посилання), це може порушити контекст. Передавання через контекст працює тільки у разі, якщо `SomeContext` для надання контексту та `SomeContext` для його зчитування є ***точно* тим самим об'єктом**, що визначається порівнянням `===`.
4848
4949
---
5050

0 commit comments

Comments
 (0)