Files
Road_roller/.claude/skills/vueuse-functions/references/watchDeep.md
2026-09-17 08:52:53 +08:00

55 lines
1.2 KiB
Markdown

---
category: Watch
---
# watchDeep
Shorthand for watching value with `{deep: true}`
## Usage
Similar to `watch`, but with `{ deep: true }`
```ts
import { watchDeep } from '@vueuse/core'
const nestedObject = ref({ foo: { bar: { deep: 5 } } })
watchDeep(nestedObject, (updated) => {
console.log(updated)
})
onMounted(() => {
nestedObject.value.foo.bar.deep = 10
})
```
## Type Declarations
```ts
export declare function watchDeep<
T extends Readonly<MultiWatchSources>,
Immediate extends Readonly<boolean> = false,
>(
source: [...T],
cb: WatchCallback<MapSources<T>, MapOldSources<T, Immediate>>,
options?: Omit<WatchOptions<Immediate>, "deep">,
): WatchHandle
export declare function watchDeep<
T,
Immediate extends Readonly<boolean> = false,
>(
source: WatchSource<T>,
cb: WatchCallback<T, Immediate extends true ? T | undefined : T>,
options?: Omit<WatchOptions<Immediate>, "deep">,
): WatchHandle
export declare function watchDeep<
T extends object,
Immediate extends Readonly<boolean> = false,
>(
source: T,
cb: WatchCallback<T, Immediate extends true ? T | undefined : T>,
options?: Omit<WatchOptions<Immediate>, "deep">,
): WatchHandle
```