You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
В большинстве случаев мы рекомендуем использовать [контролируемые компоненты](/docs/forms.html) для работы с формами. В контролируемом компоненте, данные формы обрабатываются React-компонентом. В качестве альтернативы можно использовать неконтролируемые компоненты. Они хранят данные формы прямо в DOM.
7
+
В большинстве случаев при работе с формами мы рекомендуем использовать [контролируемые компоненты](/docs/forms.html). В контролируемом компоненте, данные формы обрабатываются React-компонентом. В качестве альтернативы можно использовать неконтролируемые компоненты. Они хранят данные формы прямо в DOM.
8
8
9
9
Вместо того, чтобы писать обработчик события для каждого обновления состояния, вы можете использовать неконтролируемый компонент и читать значения из DOM через [реф](/docs/refs-and-the-dom.html).
10
10
11
-
Вот так, к примеру, можно получить имя в обработчике неконтролируемого компонента:
11
+
Вот так, к примеру, обработчик неконтролируемого компонента может получить имя от элемента `input`:
12
12
13
13
```javascript{5,9,18}
14
14
class NameForm extends React.Component {
@@ -41,11 +41,11 @@ class NameForm extends React.Component {
41
41
42
42
Такие компоненты хранят данные в DOM и их проще интегрировать в не React-приложении. Этот код можно сократить, если пожертвовать стилистикой. В противном случае лучше использовать контролируемые компоненты.
43
43
44
-
Если всё ещё остаётся неясным, какой тип компонента необходимо использовать в конкретной ситуации, то, возможно, [статья про сравнение контролируемых и некотролируемых полях ввода](http://goshakkk.name/controlled-vs-uncontrolled-inputs-react/)может показаться полезной.
44
+
Если всё ещё остаётся неясным, какой тип компонента лучше использовать в конкретной ситуации, то, возможно, [статья про сравнение контролируемых и некотролируемых полях ввода](http://goshakkk.name/controlled-vs-uncontrolled-inputs-react/)окажется полезной.
45
45
46
46
### Значения по умолчанию {#default-values}
47
47
48
-
На этапе рендеринга жизненного цикла в React, атрибут `value` полей ввода переопределяет значение в DOM. С неконтролируемым компонентом зачастую нужно, чтобы React опредил первоначальное значение, но впоследствии ничего не делал с ним. В этом случае необходимо определить атрибут `defaultValue` вместо `value`.
48
+
На этапе рендеринга атрибут `value` полей ввода переопределяет значение в DOM. С неконтролируемым компонентом зачастую нужно, чтобы React опредил первоначальное значение, но впоследствии ничего не делал с ним. В этом случае необходимо определить атрибут `defaultValue` вместо `value`.
49
49
50
50
```javascript{7}
51
51
render() {
@@ -76,7 +76,7 @@ HTML-тег `<input type="file">` позволяет пользователю в
76
76
77
77
В React `<input type="file">` всегда является неконтролируемым компонентом, потому что его значение может быть установлено только пользователем, а не программным путём.
78
78
79
-
Следует использовать File API для взаимодействия с файлами. В следующем примере показано, как создать [реф на DOM-узел](/docs/refs-and-the-dom.html), чтобы получить доступ к файлам в обработчике отправки формы:
79
+
Для взаимодействия с файлами следует использовать File API. В следующем примере показано, как создать [реф на DOM-узел](/docs/refs-and-the-dom.html), чтобы затем получить доступ к файлам в обработчике отправки формы:
0 commit comments