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
*`load`: Функция, которая возвращает [Промис](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Promise) или другой *thenable* (объект, в котором определен метод `then`). Вызова `load` не произойдет до тех пор, пока вы не попытайтесь отрендерить возвращённый компонент. После первого вызова `load`, React будет ждать завершения выполнения команды, а затем отрендерит разрешённое значение как React компонент. Возвращенный промис и разрешенное значение Промиса будут кэшированы, `load` больше вызывать не придется. Если промис отклонили, причина этого будет указана в ближайшем Error Boundary.
34
+
*`load`: Функция, которая возвращает [Промис](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Promise) или другой *thenable* (объект, в котором определен метод `then`). Вызова `load` не произойдет до тех пор, пока вы не попытайтесь отрендерить возвращённый компонент. После первого вызова `load`, React будет ждать завершения выполнения команды, а затем отрендерит разрешённое значение как React компонент. Возвращённый промис и разрешённое значение Промиса будут кэшированы, `load` больше вызывать не придется. Если промис отклонили, причина этого будет указана в ближайшем Error Boundary.
35
35
36
36
#### Возвращаемое значение {/*returns*/}
37
37
38
-
`lazy` возвращает React компонент, которые можно отрендерить в вашем дереве. Во время загрузки ленивых компонентов попытки их рендора будут *заморожены.* Используйте [`<Suspense>`](/reference/react/Suspense) для отображения индикатора во время загрузки.
38
+
`lazy` возвращает React компонент, которые можно отрендерить в вашем дереве. Во время загрузки ленивых компонентов попытки их рендера будут *заморожены.* Используйте [`<Suspense>`](/reference/react/Suspense) для отображения индикатора во время загрузки.
Возвращает [Промис](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Promise) или другой *thenable* (объект, в котором определен метод `then`). В коненом итоге он вернется к действительному React компоненту, например к функции, [`memo`](/reference/react/memo), или [`forwardRef`](/reference/react/forwardRef) компоненту.
50
+
Возвращает [Промис](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Promise) или другой *thenable* (объект, в котором определен метод `then`). В конечном итоге он вернётся к действительному React компоненту, например к функции, [`memo`](/reference/react/memo), или [`forwardRef`](/reference/react/forwardRef) компоненту.
Этот код опирается на [динамический `import()`,](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/import) который должен поддержиавться вашим бандлером или фреймворком.
72
+
Этот код опирается на [динамический `import()`,](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/import) который должен поддерживаться вашим бандлером или фреймворком.
73
73
74
74
Теперь, когда код вашего компонента загружается по запросу, вам также необходимо указать, что должно отображаться во время его загрузки. Это можно сделать путем оборачивания ленивого компонента или его родителя в [`<Suspense>`](/reference/react/Suspense) boundary:
Например, код для `MarkdownPreview` не загрузится, пока его не попытаются вызвать. Если `MarkdownPreview`еще не загрузился, на его месте отобразится `Loading`. Попробуйте поставить галочку в чекбоксе:
83
+
Например, код для `MarkdownPreview` не загрузится, пока его не попытаются вызвать. Если `MarkdownPreview`ещё не загрузился, на его месте отобразится `Loading`. Попробуйте поставить галочку в чекбоксе:
84
84
85
85
<Sandpack>
86
86
@@ -111,7 +111,7 @@ export default function MarkdownEditor() {
111
111
);
112
112
}
113
113
114
-
//Add a fixed delay so you can see the loading state
114
+
//Добавьте фиксированную задержку, чтобы увидеть загрузку
115
115
functiondelayForDemo(promise) {
116
116
returnnewPromise(resolve=> {
117
117
setTimeout(resolve, 2000);
@@ -174,7 +174,7 @@ body {
174
174
175
175
</Sandpack>
176
176
177
-
Это демо загрузится с искуственной задержкой. В следуйщий раз когда вы снимите и поставите галочку, `Preview` будет закэшировано, загрузки не будет. Чтобы снова увидеть загрузку, нужно нажать "Reset" в сэндбоксе.
177
+
Это демо загрузится с искусственной задержкой. В следующий раз когда вы снимите и поставите галочку, `Preview` будет закэшировано, загрузки не будет. Чтобы снова увидеть загрузку, нужно нажать "Reset" в сандбоксе.
178
178
179
179
[Узнать об управлении состояниями загрузки с помощью Suspense.](/reference/react/Suspense)
180
180
@@ -184,13 +184,13 @@ body {
184
184
185
185
### Состояние моего `lazy` компонента неожиданно сбрасывается {/*my-lazy-components-state-gets-reset-unexpectedly*/}
186
186
187
-
Не объявляйте `lazy` компоненты *внтури* других компонентов:
187
+
Не объявляйте `lazy` компоненты *внутри* других компонентов:
188
188
189
189
```js {4-5}
190
190
import { lazy } from'react';
191
191
192
192
functionEditor() {
193
-
// 🔴 Bad: Все состояния сбросятся при ре-рендере
193
+
// 🔴 Плохо: Все состояния сбросятся при ре-рендере
0 commit comments