Add comprehensive reference documentation for: - Vitest: environments, projects/workspaces, type testing, vi utilities - Pinia: HMR, Nuxt integration, SSR setup - Vue: built-in components (Transition, Teleport, Suspense, KeepAlive) and advanced directives
42 lines
1020 B
Markdown
42 lines
1020 B
Markdown
---
|
|
category: Watch
|
|
---
|
|
|
|
# watchOnce
|
|
|
|
Shorthand for watching value with `{ once: true }`. Once the callback fires once, the watcher will be stopped.
|
|
See [Vue's docs](https://vuejs.org/guide/essentials/watchers.html#once-watchers) for full details.
|
|
|
|
## Usage
|
|
|
|
Similar to `watch`, but with `{ once: true }`
|
|
|
|
```ts
|
|
import { watchOnce } from '@vueuse/core'
|
|
|
|
watchOnce(source, () => {
|
|
// triggers only once
|
|
console.log('source changed!')
|
|
})
|
|
```
|
|
|
|
## Type Declarations
|
|
|
|
```ts
|
|
export declare function watchOnce<T extends Readonly<MultiWatchSources>>(
|
|
source: [...T],
|
|
cb: WatchCallback<MapSources<T>, MapOldSources<T, true>>,
|
|
options?: Omit<WatchOptions<true>, "once">,
|
|
): WatchHandle
|
|
export declare function watchOnce<T>(
|
|
source: WatchSource<T>,
|
|
cb: WatchCallback<T, T | undefined>,
|
|
options?: Omit<WatchOptions<true>, "once">,
|
|
): WatchHandle
|
|
export declare function watchOnce<T extends object>(
|
|
source: T,
|
|
cb: WatchCallback<T, T | undefined>,
|
|
options?: Omit<WatchOptions<true>, "once">,
|
|
): WatchHandle
|
|
```
|