【发布时间】:2019-05-30 00:12:29
【问题描述】:
在nest中如何处理第三方依赖项(即不以nest-module形式出现的依赖项)的最佳实践是什么?
例如,我在自己的日志模块中直接使用morgan,方法是将其导入到相应的文件中:
import { Injectable, MiddlewareFunction, NestMiddleware } from '@nestjs/common';
import * as morgan from 'morgan';
@Injectable()
export class NestLoggingMiddleware implements NestMiddleware {
resolve(...args: any[]): MiddlewareFunction {
/** use morgan here, e.g. wrap it in a custom middleware ... */
}
}
现在我知道 Nest 的架构深受 Angular 的影响,我找到了this article explaining how to deal with 3rd party dependencies in angular。同样的想法也适用于巢吗?我应该为morgan 创建一个自定义提供程序并注入它吗?我是只注入 morgan 导入,还是注入已配置的 morgan 实例?
【问题讨论】:
标签: typescript dependency-injection nestjs