我记得之前讲给类中的属性添加装饰器大概是这样的
function nameDecorator(target: any, key: string) {
console.log(target, key);
target[key] = "原型中的 name";
}
class Test {
@nameDecorator
name: string = '实例';
}
let test = new Test();
console.log(test.name); // 实例
console.log((test as any).__proto__.name); // 原型中的 name
上面的代码我的理解是类中定义的name属性是在实例上,而不是 prototype 中。
而这集里,让我有疑惑的是下面的代码