vue2的深度监听可以改成和Proxy一样get的时候深度监听吗?
来源:6-16 vue3用Proxy 实现响应式
慕粉3858957
2021-03-16
vue2的深度监听可以改成和Proxy一样get的时候深度监听吗?如果可以的话为什么不这样做呢?
写回答
4回答
-
双越
2021-03-16
答案是:不可以。
课程里有一个和你一样的问题,你去搜一下,里面有我的回复,也有其他同学的回复,很详细。
132022-07-10 -
慕移动8175742
2021-04-13
function observer(target) { if (typeof target !== 'object' || target == null) { return target; } for (let key in target) { let value = target[key]; Object.defineProperty(target, key, { get() { console.log('[Trigger Get]', key); return observer(value); }, set(newV) { console.log('[Trigger Set]', newV); value = newV; } }); } return target; } var obj = { a: { b: 1 } }; observer(obj); obj.a = 2;
这样可以吗 ?
00 -
qq_孙延_03214931
2021-04-03
是因为Object.defineProperty实现监听的时候需要for循环而proxy不需要循环 改写后性能反而不好 的原因吗?
012021-04-04 -
msidolphin
2021-03-22
你初始化的时候不去深度监听,后续获取值的时候怎么会进入到getter呢?
022021-03-26
相似问题