From 314acf40a7cd510cf0aba9aca0083c9af3fab4aa Mon Sep 17 00:00:00 2001 From: Vitalii Perehonchuk Date: Sun, 14 Jul 2024 12:43:19 +0300 Subject: [PATCH 01/10] Finished translation of Snate as a Snapshot --- src/content/learn/state-as-a-snapshot.md | 186 +++++++++++------------ 1 file changed, 92 insertions(+), 94 deletions(-) diff --git a/src/content/learn/state-as-a-snapshot.md b/src/content/learn/state-as-a-snapshot.md index df4eddbd6..f1d6d1433 100644 --- a/src/content/learn/state-as-a-snapshot.md +++ b/src/content/learn/state-as-a-snapshot.md @@ -1,27 +1,27 @@ --- -title: State as a Snapshot +title: Стан як зняток --- -State variables might look like regular JavaScript variables that you can read and write to. However, state behaves more like a snapshot. Setting it does not change the state variable you already have, but instead triggers a re-render. +Змінні стану можуть нагадувати звичайні змінні JavaScript, які можна зчитати та змінити. Проте стан поводиться радше як зняток. Його задання не змінює змінну стану, яка вже є, а натомість запускає повторний рендер. -* How setting state triggers re-renders -* When and how state updates -* Why state does not update immediately after you set it -* How event handlers access a "snapshot" of the state +* Як задання стану запускає повторні рендери +* Коли та як оновлюється стан +* Чому стан не оновлюється зразу після його задання +* Як обробники подій звертаються до "знятку" стану -## Setting state triggers renders {/*setting-state-triggers-renders*/} +## Задання стану запускає рендери {/*setting-state-triggers-renders*/} -You might think of your user interface as changing directly in response to the user event like a click. In React, it works a little differently from this mental model. On the previous page, you saw that [setting state requests a re-render](/learn/render-and-commit#step-1-trigger-a-render) from React. This means that for an interface to react to the event, you need to *update the state*. +Можна уявляти, що користувацький інтерфейс змінюється безпосередньо внаслідок дії користувача, наприклад, клацання. В React же це працює трохи інакше, ніж передбачає ця ментальна модель. На попередній сторінці ви побачили, що [задання стану просить React про повторний рендер](/learn/render-and-commit#step-1-trigger-a-render). Це означає, що щоб інтерфейс зреагував на подію, необхідно *оновити стан*. -In this example, when you press "send", `setIsSent(true)` tells React to re-render the UI: +У цьому прикладі, якщо натиснути "надіслати", то `setIsSent(true)` каже React виконати повторний рендер UI: @@ -30,9 +30,9 @@ import { useState } from 'react'; export default function Form() { const [isSent, setIsSent] = useState(false); - const [message, setMessage] = useState('Hi!'); + const [message, setMessage] = useState('Привіт!'); if (isSent) { - return

Your message is on its way!

+ return

Ваше повідомлення – в дорозі!

} return (
{ @@ -41,11 +41,11 @@ export default function Form() { sendMessage(message); }}>