Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translate for "State: A Component's Memory" #888

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

sakhnyuk
Copy link

@sakhnyuk sakhnyuk changed the title Translate Translate for "State: A Component's Memory" May 23, 2023
Copy link
Collaborator

@titovmx titovmx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Привет! Спасибо за отличный перевод! Оставил несколько комментариев.
Есть две глобальные просьбы:

  1. Проверить перевод на использование буквы Ё. Для этого вы можете восользоваться пакетом eyo - он поможет найти все случаи, где должна быть использована Ё, и даже сделать автоматическую замену.
  2. Перевести тексты примеров и задач (то что отображается пользователям).

---

<Intro>

Components often need to change what's on the screen as a result of an interaction. Typing into the form should update the input field, clicking "next" on an image carousel should change which image is displayed, clicking "buy" should put a product in the shopping cart. Components need to "remember" things: the current input value, the current image, the shopping cart. In React, this kind of component-specific memory is called *state*.
Компоненты часто должны изменять то, что отображается на экране как результат взаимодействия. Ввод в форму должен обновлять поле ввода, нажатие кнопки "далее" на карусели изображений должно изменять отображаемое изображение, нажатие кнопки "купить" должно добавлять товар в корзину. Компоненты должны "запоминать": текущее значение ввода, текущее изображение, корзину. В React такой компонент-специфической памятью называется *состоянием*.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Компоненты часто должны изменять то, что отображается на экране как результат взаимодействия. Ввод в форму должен обновлять поле ввода, нажатие кнопки "далее" на карусели изображений должно изменять отображаемое изображение, нажатие кнопки "купить" должно добавлять товар в корзину. Компоненты должны "запоминать": текущее значение ввода, текущее изображение, корзину. В React такой компонент-специфической памятью называется *состоянием*.
Компоненты часто должны изменять то, что отображается на экране как результат взаимодействия. Ввод в форму должен обновлять поле ввода, нажатие кнопки "далее" на карусели изображений должно изменять отображаемое изображение, нажатие кнопки "купить" должно добавлять товар в корзину. Компоненты должны "запоминать": текущее значение ввода, текущее изображение, корзину. В React такая память компонента называется *состоянием*.

Мне кажется, для русского такое сложносоставное слово звучит немного инородно


Here's a component that renders a sculpture image. Clicking the "Next" button should show the next sculpture by changing the `index` to `1`, then `2`, and so on. However, this **won't work** (you can try it!):
Вот компонент, который рендерит изображение скульптуры. При нажатии на кнопку "Next" должна отображаться следующая скульптура, изменяя `index` на `1`, затем на `2` и так далее. Однако это **не сработает** (вы можете попробовать!):

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Могли бы вы также перевести примеры?


> The `[` and `]` syntax here is called [array destructuring](https://javascript.info/destructuring-assignment) and it lets you read values from an array. The array returned by `useState` always has exactly two items.
> Синтакс `[` и `]` называется [деструктуризацией массива](https://javascript.info/destructuring-assignment) и позволяет читать значения из массива. Массив, возвращаемый `useState`, всегда имеет ровно два элемента.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
> Синтакс `[` и `]` называется [деструктуризацией массива](https://javascript.info/destructuring-assignment) и позволяет читать значения из массива. Массив, возвращаемый `useState`, всегда имеет ровно два элемента.
> Синтаксис `[` и `]` называется [деструктуризацией массива](https://learn.javascript.ru/destructuring-assignment) и позволяет читать значения из массива. Массив, возвращаемый `useState`, всегда имеет ровно два элемента.

обновил ссылку на русскоязычную версию


## Giving a component multiple state variables {/*giving-a-component-multiple-state-variables*/}
## Предоставление компоненту несколько переменных состояния {/*giving-a-component-multiple-state-variables*/}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## Предоставление компоненту несколько переменных состояния {/*giving-a-component-multiple-state-variables*/}
## Предоставление компоненту нескольких переменных состояния {/*giving-a-component-multiple-state-variables*/}

Числительное "несколько" следует склонять.


You can have as many state variables of as many types as you like in one component. This component has two state variables, a number `index` and a boolean `showMore` that's toggled when you click "Show details":
Вы можете иметь столько переменных состояния разных типов, сколько захочешь в одном компоненте. Этот компонент имеет две переменные состояния: число `index` и логическое значение `showMore`, которое переключается, когда вы нажимаете "Show details":
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Вы можете иметь столько переменных состояния разных типов, сколько захочешь в одном компоненте. Этот компонент имеет две переменные состояния: число `index` и логическое значение `showMore`, которое переключается, когда вы нажимаете "Show details":
Вы можете иметь столько переменных состояния разных типов в одном компоненте, сколько захотите. Этот компонент имеет две переменные состояния: число `index` и логическое значение `showMore`, которое переключается, когда вы нажимаете "Show details":

На мой взгляд, разные части предложения здесь звучат несогласовано.
Также, пожалуйста, обратите внимание, что при переводе примеров, нужно будет перевести здесь текст для кнопки.

* Use a state variable when a component needs to "remember" some information between renders.
* State variables are declared by calling the `useState` Hook.
* Используйте переменную состояния, когда компоненту нужно «запомнить» некоторую информацию между рендерами.
* Переменные состония декларируются вызовом хука `useState`.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Переменные состония декларируются вызовом хука `useState`.
* Переменные состояния декларируются вызовом хука `useState`.

* Use a state variable when a component needs to "remember" some information between renders.
* State variables are declared by calling the `useState` Hook.
* Используйте переменную состояния, когда компоненту нужно «запомнить» некоторую информацию между рендерами.
* Переменные состония декларируются вызовом хука `useState`.
* Hooks are special functions that start with `use`. They let you "hook into" React features like state.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Hooks are special functions that start with `use`. They let you "hook into" React features like state.

* The `useState` Hook returns a pair of values: the current state and the function to update it.
* You can have more than one state variable. Internally, React matches them up by their order.
* State is private to the component. If you render it in two places, each copy gets its own state.
* Хуки это специальные функции, которые начинаются с `use`. Они позволяют вам подключаться к функциям React, таким как состояние.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* Хуки это специальные функции, которые начинаются с `use`. Они позволяют вам подключаться к функциям React, таким как состояние.
* Хуки это специальные функции, которые начинаются с `use`. Они позволяют вам подключаться к функциям React, таким как состояние.

@@ -1219,13 +1221,13 @@ img { width: 120px; height: 120px; }

</Sandpack>

Notice how `hasPrev` and `hasNext` are used *both* for the returned JSX and inside the event handlers! This handy pattern works because event handler functions ["close over"](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures) any variables declared while rendering.
Заметьте как `hasPrev` и `hasNext` используются *вместе* для возвращаемым JSX и внутри обработчиков событий! Этот удобный шаблон работает потому что функции обработчиков событий ["замыкают"](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures) любые переменные объявленные во время рендеринга.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Заметьте как `hasPrev` и `hasNext` используются *вместе* для возвращаемым JSX и внутри обработчиков событий! Этот удобный шаблон работает потому что функции обработчиков событий ["замыкают"](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures) любые переменные объявленные во время рендеринга.
Заметьте как `hasPrev` и `hasNext` используются *вместе* для возвращаемым JSX и внутри обработчиков событий! Этот удобный шаблон работает, потому что функции обработчиков событий ["замыкают"](https://developer.mozilla.org/ru/docs/Web/JavaScript/Closures) любые переменные объявленные во время рендеринга.

Обновил ссылку на русскоязычную версию


<Hint>

Are there any limitations on _where_ Hooks may be called? Does this component break any rules? Check if there are any comments disabling the linter checks--this is where the bugs often hide!
Существуют ли какие-либо ограничения на _где_ Хуки могут быть вызваны? Нарушает ли этот компонент какие-либо правила? Проверьте, есть ли комментарии, отключающие проверки линтера - здесь часто скрываются ошибки!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Существуют ли какие-либо ограничения на _где_ Хуки могут быть вызваны? Нарушает ли этот компонент какие-либо правила? Проверьте, есть ли комментарии, отключающие проверки линтера - здесь часто скрываются ошибки!
Существуют ли какие-либо ограничения на то, _где_ Хуки могут быть вызваны? Нарушает ли этот компонент какие-либо правила? Проверьте, есть ли комментарии, отключающие проверки линтера - здесь часто скрываются ошибки!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants