Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion content/docs/hooks-effect.md
Original file line number Diff line number Diff line change
Expand Up @@ -449,7 +449,7 @@ useEffect(() => {
}, [count]); // Перезапускать эффект только если count поменялся
```

В этом примере, мы передаём `[count]` вторым аргументом. Что это вообще значит? Это значит, что если `count` будет равен `5` и наш компонент повторно рендерится с тем же значением `count` = `5`, React сравнит `[5]` из предыдущего рендера и `[5]` из следующего рендера. Так как, все элементы массива остались без изменений (`5 === 5`), React пропустит этот эффект. Это и есть оптимизация данного процесса.
В этом примере, мы передаём `[count]` вторым аргументом. Что это вообще значит? Это значит, что если `count` будет равен `5` и наш компонент повторно рендерится с тем же значением `count` = `5`, React сравнит `[5]` из предыдущего рендера и `[5]` из следующего рендера. Так как все элементы массива остались без изменений (`5 === 5`), React пропустит этот эффект. Это и есть оптимизация данного процесса.

Когда при следующем рендере наша переменная `count` обновится до `6`, React сравнит элементы в массиве `[5]` из предыдущего рендера и элементы массива `[6]` из следующего рендера. На этот раз, React выполнит наш эффект, так как `5 !== 6`. Если у вас будет несколько элементов в массиве, React будет выполнять наш эффект, в том случае, когда хотя бы один из них будет отличаться.

Expand Down