Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | import { createDecorator } from './Component' import type { WatchOptions } from '../types/options' /** * decorator of a watch function * * @param path the path or the expression to observe * @param WatchOption * @return MethodDecorator */ export function Watch(path: string, watchOptions: WatchOptions = {}): MethodDecorator { return createDecorator((componentOptions, handler) => { componentOptions.watch = componentOptions.watch || Object.create(null) const watch: any = componentOptions.watch if (typeof watch[path] === 'object' && !Array.isArray(watch[path])) { waItch[path] = [watch[path]] } else if (typeof watch[path] === 'undefined') { watch[path] = [] }E watch[path].push({ handler, ...watchOptions }) }) } |