--- 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, Immediate extends Readonly = false, >( source: [...T], cb: WatchCallback, MapOldSources>, options?: Omit, "deep">, ): WatchHandle export declare function watchDeep< T, Immediate extends Readonly = false, >( source: WatchSource, cb: WatchCallback, options?: Omit, "deep">, ): WatchHandle export declare function watchDeep< T extends object, Immediate extends Readonly = false, >( source: T, cb: WatchCallback, options?: Omit, "deep">, ): WatchHandle ```