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

Update reactivity-core.md #481

Merged
merged 1 commit into from
Sep 29, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 22 additions & 22 deletions src/api/reactivity-core.md
Original file line number Diff line number Diff line change
Expand Up @@ -289,42 +289,42 @@
stop()
```

Pausing / resuming the watcher: <sup class="vt-badge" data-text="3.5+" />
Пауза / продолжение наблюдения: <sup class="vt-badge" data-text="3.5+" />

```js
const { stop, pause, resume } = watchEffect(() => {})

// temporarily pause the watcher
// временно поставить наблюдатель на паузу
pause()

// resume later
// возобновить наблюдение
resume()

// stop
// остановить наблюдатель
stop()
```

Side effect cleanup:
Очистка сайд эффекта:

```js
watchEffect(async (onCleanup) => {
const { response, cancel } = doAsyncWork(newId)
// `cancel` will be called if `id` changes, cancelling
// the previous request if it hasn't completed yet
// `cancel` будет вызван при изменении `id`, отменит
// предыдущий запрос, если он еще не был выполнен
onCleanup(cancel)
data.value = await response
})
```

Side effect cleanup in 3.5+:
Очистка сайд эффекта в версии 3.5+:

```js
import { onWatcherCleanup } from 'vue'

watchEffect(async () => {
const { response, cancel } = doAsyncWork(newId)
// `cancel` will be called if `id` changes, cancelling
// the previous request if it hasn't completed yet
// `cancel` будет вызван при изменении `id`, отменит
// предыдущий запрос, если он еще не был выполнен
onWatcherCleanup(cancel)
data.value = await response
})
Expand Down Expand Up @@ -427,7 +427,7 @@
Третий необязательный аргумент представляет собой объект параметров, поддерживающий следующие настройки:

- **`immediate`**: запуск обратного вызова сразу при создании наблюдателя. При первом вызове старое значение будет `undefined`.
- **`deep`**: принудительный глубокий обход источника, если он является объектом, чтобы обратный вызов срабатывал при глубоких изменениях. In 3.5+, this can also be a number indicating the max traversal depth. See [Deep Watchers](/guide/essentials/watchers#deep-watchers). См. раздел [Глубокие наблюдатели](/guide/essentials/watchers#deep-watchers).
- **`deep`**: принудительный глубокий обход источника, если он является объектом, чтобы обратный вызов срабатывал при глубоких изменениях. В версии 3.5+ это также может быть число, указывающее максимальную глубину обхода. См. раздел [Глубокие наблюдатели](/guide/essentials/watchers#deep-watchers).
- **`flush`**: настройка времени срабатывания обратного вызова. Смотрите [Время срабатывания](/guide/essentials/watchers#callback-flush-timing) и [`watchEffect()`](/api/reactivity-core#watcheffect).
- **`onTrack / onTrigger`**: отладка зависимостей наблюдателя. См. раздел [Отладка наблюдателей](/guide/extras/reactivity-in-depth#watcher-debugging).
- **`once`**: (3.4+) запустить обратный вызов только один раз. Наблюдатель автоматически останавливается после первого выполнения обратного вызова. <sup class="vt-badge" data-text="3.4+" />
Expand Down Expand Up @@ -514,18 +514,18 @@
stop()
```

Pausing / resuming the watcher: <sup class="vt-badge" data-text="3.5+" />
Пауза / продолжение наблюдения: <sup class="vt-badge" data-text="3.5+" />

```js
const { stop, pause, resume } = watch(() => {})

// temporarily pause the watcher
// временно поставить наблюдатель на паузу
pause()

// resume later
// возобновить наблюдение
resume()

// stop
// остановить наблюдатель
stop()
```

Expand All @@ -534,14 +534,14 @@
```js
watch(id, async (newId, oldId, onCleanup) => {
const { response, cancel } = doAsyncWork(newId)
// `cancel` будет вызван при изменении `id`, отменяющий
// `cancel` будет вызван при изменении `id`, отменит
// предыдущий запрос, если он еще не был выполнен
onCleanup(cancel)
data.value = await response
})
```

Side effect cleanup in 3.5+:
Очистка сайд эффекта в версии 3.5+:

```js
import { onWatcherCleanup } from 'vue'
Expand All @@ -561,9 +561,9 @@

## onWatcherCleanup() <sup class="vt-badge" data-text="3.5+" /> {#onwatchercleanup}

Register a cleanup function to be executed when the current watcher is about to re-run. Can only be called during the synchronous execution of a `watchEffect` effect function or `watch` callback function (i.e. it cannot be called after an `await` statement in an async function.)
Регистрирует функцию очистки, которая будет выполняться, когда текущий наблюдатель собирается повторно запуститься. Может вызываться только во время синхронного выполнения функции эффекта `watchEffect` или функции обратного вызова `watch` (т.е. не может быть вызван после оператора `await` в асинхронной функции).

- **Type**
- **Тип**

```ts
function onWatcherCleanup(
Expand All @@ -572,15 +572,15 @@ Register a cleanup function to be executed when the current watcher is about to
): void
```

- **Example**
- **Пример**

```ts
import { watch, onWatcherCleanup } from 'vue'

watch(id, (newId) => {
const { response, cancel } = doAsyncWork(newId)
// `cancel` will be called if `id` changes, cancelling
// the previous request if it hasn't completed yet
// `cancel` будет вызван при изменении `id`, отменит
// предыдущий запрос, если он еще не был выполнен
onWatcherCleanup(cancel)
})
```