手记

【九月打卡】第10天 TypeScript学习 10-12章

课程名称: 晋级TypeScript高手,成为抢手的前端开发人才

课程章节: 10-12 【泛型工厂类匿名类+继承装饰器】匿名类在装饰器中的实现

课程讲师: keviny79

课程内容:
匿名类在装饰器中的实现:

function ClassFunctionExtends<T extends { new(...args: any[]): any }> (mytargetClass: T) {
  console.log("mytargetClass", mytargetClass);
  
  // 匿名类就是可以直接不写类名称,直接返回
  // 匿名类
  return class extends mytargetClass {
    constructor(...args: any[]) {
      super(args);
      console.log("SonClass执行结束");
    }
  }
}
@ClassFunctionExtends
class Test {
  name!: string;
  age!: number
  // 1.先执行原来构造函数
  constructor(name: string) {
    this.name = name;
    console.log("执行");
    //console.log("beforendame:", this.name)// lisi
  }
  eat() {
    console.log(this.name, "吃饭");
  }
}

在装饰器中 类 可以不写名称,直接返回类,这在 ts 中是支持。
但在底层源码中会自动生成类名

课程收获:
明白在装饰器中 类 可以不写名称,直接返回

0人推荐
随时随地看视频
慕课网APP