Node.js 对象文字只能指定已知属性,并且';模块';在类型'中不存在;ModuleMetadata';
我刚刚升级了所有软件包,特别是TypeScript,从2.5.2升级到3.8.3,我遇到了以下错误: 错误TS2345:类型为{modules:(typeof OrmModule)[]的参数; 控制器:(AppController的类型)[];组件:(AppController的类型) 配置服务|记录类型服务|记录类型 MessagingService)[];}不可分配给类型为的参数 “ModuleMetadata”。对象文字只能指定已知属性, “ModuleMetadata”类型中不存在“modules” 19模块:[OrmModule,AdminModule,CrmModule,EmrModule]Node.js 对象文字只能指定已知属性,并且';模块';在类型'中不存在;ModuleMetadata';,node.js,typescript,Node.js,Typescript,我刚刚升级了所有软件包,特别是TypeScript,从2.5.2升级到3.8.3,我遇到了以下错误: 错误TS2345:类型为{modules:(typeof OrmModule)[]的参数; 控制器:(AppController的类型)[];组件:(AppController的类型) 配置服务|记录类型服务|记录类型 MessagingService)[];}不可分配给类型为的参数 “ModuleMetadata”。对象文字只能指定已知属性, “ModuleMetadata”类型中不存在“mo
更改
模块:[]
用于导入:[]
欢迎使用SO!虽然这可能是问题的答案,但您能否提供更多的详细说明,说明它解决问题的原因?可能包括文档链接或某种解释。谢谢
import { Module, NestModule, MiddlewareConsumer, RequestMethod } from '@nestjs/common';
import { AppController } from './app.controller';
import { AuthenticationMiddleware } from './authentication/tokenhandler';
import { MulterMiddleware } from './common/middlewares/multer';
import { AdminModule } from './admin/admin.module';
import { OrmModule } from '../orm/orm.module';
import { CrmModule } from './crm/crm.module';
import { EmrModule } from './emr/emr.module';
import { ConfigurationService } from './common/services/configuration';
import { LoggingService } from './common/services/logging';
import { MessagingService } from './common/services/messaging';
@Module({
modules: [OrmModule, AdminModule, CrmModule, EmrModule],
controllers: [AppController],
components: [ConfigurationService, LoggingService, MessagingService]
})
export class ApplicationModule implements NestModule {
configure(consumer: MiddlewareConsumer): void {
consumer.apply(AuthenticationMiddleware)
.with( // routes that will be excluded.
{ path: '/leads/open', method: RequestMethod.POST },
{ path: '/', method: RequestMethod.GET },
{ path: '/documents/upload', method: RequestMethod.POST },
).forRoutes( //routes that will be included
{ path: '/*', method: RequestMethod.ALL },
{ path: '/*/*', method: RequestMethod.ALL }
);
consumer.apply(MulterMiddleware)
.forRoutes({ path: '/images/:leadId', method: RequestMethod.POST },
{ path: '/documents/:leadId', method: RequestMethod.POST },
{ path: '/examination/stylist/:leadId', method: RequestMethod.POST },
{ path: '/examination/stylist/:leadId/:id', method: RequestMethod.PUT }
)
}
}