export function nameLog(target,key,descriptor){
let fn = descriptor.value; //setName函数
descriptor.value = function(...args) {
// 执行一些日记操作
// .....
return fn.apply(this, args);
};
return descriptor;
}
class Person {
constructor(name) {
this.name = name;
}
@nameLog
setName(value){
this.name = value
}
getName() {
return this.name;
}
}
看网上说,return descriptor是必须的,但是我删掉这行发现也是正常运行的,是怎么回事呢?
这个的标准还没完全定下来呢吧
还有 发下说必须返回descriptor的链接