就像标题中我不能通过代理对象访问类方法一样,我得到了错误
TypeError: sth.getNumber is not a function
但在我看到它像财产一样被访问之前,因为我看到了";得到";登录终端
我真的不知道为什么会发生这种事。下面是我想做什么的简化示例。提前感谢的帮助
class mockClass {
sth?: number
constructor(n?: number) {
this.sth = n
}
public getNumber(n: number) {
return n
}
}
const sth = new Proxy<any>(new mockClass(15), {
apply: function (target, thisArg, argArr) {
console.log("apply")
console.log(target, thisArg, argArr)
return "a"
},
get: function (target, reciver) {
console.log("get")
console.log(target, reciver)
return "b"
},
})
console.log(sth.getNumber(15))
更改:
get: function (target, reciver) {
console.log("get")
console.log(target, reciver)
return "b"
},
收件人:
get: function (target, reciver) {
console.log("get")
console.log(target, reciver)
return () => { return "b"}
},