TypeScript 参数装饰器

/**
 * 参数装饰器,只要是装饰器一定是函数
 * @param target Test 对应的 prototype
 * @param key  方法名
 * @param paramIndex 参数所在的位置
 */
function paramDecorator(target: any, method: string, paramIndex: number) {
  console.log(target, method, paramIndex);
}

class Test{ 
  getInfo(@paramDecorator name: string, age: number) {
    console.log(name, age)
  }
}

const test = new Test();
test.getInfo('111', 111)