Skip to content

Commit 0469e79

Browse files
committed
update useDeferredValue translation with canary version parameter
1 parent 11080e0 commit 0469e79

File tree

1 file changed

+5
-17
lines changed

1 file changed

+5
-17
lines changed

src/content/reference/react/useDeferredValue.md

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -36,37 +36,25 @@ function SearchPage() {
3636

3737
#### Параметры {/*parameters*/}
3838

39-
<<<<<<< HEAD
4039
* `value`: Значение, обновление которого вы хотите отложить.
41-
=======
42-
* `value`: The value you want to defer. It can have any type.
43-
* <CanaryBadge title="This feature is only available in the Canary channel" /> **optional** `initialValue`: A value to use during the initial render of a component. If this option is omitted, `useDeferredValue` will not defer during the initial render, because there's no previous version of `value` that it can render instead.
40+
* <CanaryBadge title="Эта функциональность доступна только в canary-версии" /> **optional** `initialValue`: Значение, установленное для первого рендера. Если этот параметр опущен, `useDeferredValue` не сработает для первого рендера, так как нет предыдущей версии `value`, которую можно было бы показать.
4441

45-
>>>>>>> 556063bdce0ed00f29824bc628f79dac0a4be9f4
4642

4743
#### Возвращаемое значение {/*returns*/}
4844

49-
<<<<<<< HEAD
50-
При первом рендеринге вызов вернёт то же значение, которое вы указали. Когда в следующих обновлениях значение изменится, вызов вернёт прошлое значение, но при этом React запустит дополнительный фоновый рендеринг, в котором вызов вернёт обновлённое значение.
51-
=======
52-
- `currentValue`: During the initial render, the returned deferred value will be the same as the value you provided. During updates, React will first attempt a re-render with the old value (so it will return the old value), and then try another re-render in the background with the new value (so it will return the updated value).
45+
- `currentValue`: При первом рендеринге вызов вернёт то же значение, которое вы указали. Когда в следующих обновлениях значение изменится, вызов вернёт прошлое значение, но при этом React запустит дополнительный фоновый рендеринг, в котором вызов вернёт обновлённое значение.
5346

5447
<Canary>
5548

56-
In the latest React Canary versions, `useDeferredValue` returns the `initialValue` on initial render, and schedules a re-render in the background with the `value` returned.
49+
В последних canary-версиях React, `useDeferredValue` возвращает `initialValue` для первого рендера, и в фоновом режиме планирует последующий рендер уже с `value`.
5750

5851
</Canary>
59-
>>>>>>> 556063bdce0ed00f29824bc628f79dac0a4be9f4
6052

6153
#### Замечания {/*caveats*/}
6254

63-
<<<<<<< HEAD
64-
- Значения, которые вы передаёте в `useDeferredValue`, должны либо быть примитивного типа (как, например, строки или числа), либо должны создаваться **не** во время рендеринга. Если вы будете во время рендеринга каждый раз передавать в `useDeferredValue` свеже созданный объект, то так вы будете постоянно запускать ненужный фоновый рендеринг.
65-
=======
66-
- When an update is inside a Transition, `useDeferredValue` always returns the new `value` and does not spawn a deferred render, since the update is already deferred.
55+
- Когда обновление происходит внутри перехода (Transition), оно уже отложено, поэтому `useDeferredValue` всегда возвращает новое значение `value` и не приводит к повторному рендеру.
6756

68-
- The values you pass to `useDeferredValue` should either be primitive values (like strings and numbers) or objects created outside of rendering. If you create a new object during rendering and immediately pass it to `useDeferredValue`, it will be different on every render, causing unnecessary background re-renders.
69-
>>>>>>> 556063bdce0ed00f29824bc628f79dac0a4be9f4
57+
- Значения, которые вы передаёте в `useDeferredValue`, должны либо быть примитивного типа (как, например, строки или числа), либо должны создаваться **не** во время рендеринга. Если вы будете во время рендеринга каждый раз передавать в `useDeferredValue` свеже созданный объект, то так вы будете постоянно запускать ненужный фоновый рендеринг.
7058

7159
- Когда `useDeferredValue` получит другое значение (сравниваться будет через [`Object.is`](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/is)), помимо текущего рендеринга (в котором хук вернёт старое значение), дополнительно в фоне запустится рендеринг для собственно нового значения. Но этот фоновый рендеринг может прерваться: если значение параметра `value` изменится ещё раз, то React перезапустит фоновый рендеринг заново. Например, если пользователь будет печатать быстрее, чем зависящий от ввода график будет успевать в фоне рендерить предыдущий ввод -- график в таком случае обновится, только когда пользователь перестанет печатать.
7260

0 commit comments

Comments
 (0)