使用 TypeScript 的装饰器 和 Koa 实现类似于 Spring boot 注解
原理
- 首先需要知道 ts 装饰器的执行顺序
- 然后一步一步的对相关的装饰器进行反射
- 然后动态加载模块
- 解析相关的模块
- 将模块中的方法进行解析
- 将解析的方法 打包成一个路由函数
- 将函数加载到koa-router
一、 ts 装饰器的执行顺序
- 在一个类中 先执行的是 方法中的参数装饰器
- 然后 是 方法装饰器
- 再才是类装饰器
所以我们可以在类装饰器执行的时候将方法包装成一个异步的路由函数
所以我们可以在类装饰器执行的时候将方法包装成一个异步的路由函数