>watcher订阅者对象
usage:
new Watcher(vm,getter,cb,options);
vm: component实例
getter: 取值函数;
cb: 回调函数;dep.notify => watcher.update() => watcher.run() => cb.call(watcher);
options: 配置参数
>属性
vm: Component; 实例化时传入
expression: string; getter.toString()
cb: Function; 实例化时传入
id: number;
deep: boolean; //--是否深度依赖
user: boolean; //---是否用户$watch
lazy: boolean;
sync: boolean;
dirty: boolean;
active: boolean;
deps: Array<Dep>;
newDeps: Array<Dep>;
depIds: Set;
newDepIds: Set;
getter: Function;
value: any; //--this.getter()得到