Skip to content

依赖注入

在service中设置@injectable()则声明该服务可被注入

在module中设置provider即可在controller的constructor中注入使用

provider针对当前模块作用域,imports针对外部模块作用域

服务提供者

服务提供者本身可以使用其它可被注入的服务

默认作用域为当前模块,其它模块需要使用需要在module中显式导出;对应地其它模块需要在imports中导入才可使用

注入方式

  • 基础注入
  • 类注入
  • 基于env的动态注册
  • 自定义注入(useFactory)

生命周期

Request->Middleware->Guard->RequestInterceptor->Pipeline->Controller->ResponseInterceptor->ExceptionFilter->Response

  1. Request
  2. Middleware
    • Global Middleware
    • Module Middleware
  3. Guard
    • Global Guard
    • Controller Guard
    • Route Guard
  4. Interceptor(Request)
    • Global Interceptor
    • Controller Interceptor
    • Route Interceptor
  5. Pipeline
    • Global Pipeline
    • Controller Pipeline
    • Route Pipeline
    • Route Params Pipeline
  6. Controller
  7. ResponseInterceptor
    • Route Interceptor
    • Controller Interceptor
    • Global Interceptor
  8. Exception Filter
    • Route Exception Filter
    • Controller Exception Filter
    • Global Exception Filter
  9. Response