装饰器概念

  • 一种特殊类型的声明,能够被附加到类声明、方法、属性或参数上,可以修改类的行为。
  • 一个方法:可以注入到类。方法、属性参数上来扩展类、属性、方法、参数的功能。

装饰器分类

  • 类装饰器、属性装饰器、方法装饰器、参数装饰器。

装饰器写法

  • 普通装饰器(无法传参)、装饰器工厂(可传参)

装饰器是过去几年中js最大的成就之一,已经是ES7的标准特性之一。

创建装饰器

/**
* 1. 定义类HttpClient
* 2. 定义装饰器
* 3. 调用装饰器
*/

function logClass(params: any) { // 装饰器
console.log(params);
}
@logClass
class HttpClient{
constructor() {}
getData() {}
}