@ automapper/nestjs (英语)
这是一个 NestJS 模块集成 @automapper 与雀巢JS.
安装
npm i @automapper/nestjs
或带有 yarn数字 :
yarn add @automapper/nestjs
peerDependencies
@automapper/nestjs 取决于 @automapper/core
npm i @automapper/core
或带有 yarn数字 :
yarn add @automapper/core
使用量
打电话 AutomapperModule.forRoot() ,并提供一些选项来初始化 Mapper 对象.
// Single Mapper
@Module({
imports: [
AutomapperModule.forRoot({
strategyInitializer: classes(),
}),
],
})
export class AppModule {}
// Multiple Mappers
@Module({
imports: [
AutomapperModule.forRoot(
[
{
name: 'classes',
strategyInitializer: classes(),
},
{
name: 'pojos',
strategyInitializer: pojos(),
},
],
{
/* globalErrorHandler: ErrorHandler */
/* globalNamingConventions: NamingConvention | {source, destination} */
}
),
],
})
export class AppModule {}
AutomapperModule 是一个 Global 模块 Mapper 对象被初始化,它们在整个应用程序中都可以使用.
拦截器和管道
MapInterceptor 地图路由处理器响应,同时 MapPipe 收到的地图 @Body() 或者说 @Query() 数值。 两者都支持同步和同步地绘制地图,包括承诺返回的成员解析器和绘图回调. 通过Nest的正常例外处理来传播绘图错误.
日志
通过全局自动Mapper日志 AutoMapperLogger 从 @automapper/core。 。 。 .
如果您使用结构化的日志,请尽早在您的
应用程序条目 :
import { AutoMapperLogger } from '@automapper/core';
AutoMapperLogger.configure({
warn: (message, ...params) => logger.warn(message, ...params),
error: (message, ...params) => logger.error(message, ...params),
});
在装饰器运行时, 在运行前, 一些 AutoMapper 日志可能发生
AutomapperModule.forRoot() 或者说 forRootAsync() 执行。 配置
AutoMapperLogger 如果日志需要,在导入已装饰的模型类之前
使用您的日志.
用于映射器特定的运行时间错误处理, 使用 errorHandler 或者说
globalErrorHandler。 。 。 . AutomapperModule 不接受日志选项.
有关这个的更多信息,请在 文档网站