android 内部拦截,如何使用proxy,如何在内部拦截get方法
class A {
constructor() {
this.pc = {};
this.pc.name = 123;
setTimeout(() => {
console.log(this.pc);//為什么這里不能觸發 get 如何觸發
}, 1000)
}
}
A = new Proxy(A, {
get: (target, prop, recevier) => {
console.log(target[prop]);//
return target[prop];
},
})
new A();
其實我的需求是
在多個class類里面 我用到了同一個 pc對象
但是有很多行代碼 我都判斷了 if(!this.pc){return onerror()}
我想這樣做一個攔截判斷 如果沒有 this.pc 做對應的邏輯
對代碼進行更改后 如何做到 在A B類中同時能攔截
class A {
constructor() {
this.pc = {};
this.pc.name = 123;
setTimeout(() => {
this.pc
}, 1000)
let obj = new Proxy(this, {
get: (target, prop, recevier) => {
console.log(target[prop]); // 如何做到 A B同時能攔截
return target[prop];
},
})
return obj
}
}
class B extends A {
constructor() {
super()
setTimeout(() => {
this.pc
}, 3000)
}
}
new B();
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的android 内部拦截,如何使用proxy,如何在内部拦截get方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS开发--验证码
- 下一篇: 山寨“饿了么”应用中添加菜品数量按钮效果