Nest.js 5 正式版:基于 TypeScript 面向切面编程的 Node.js 微服务框架

栏目: 软件资讯 · 发布时间: 8年前

内容简介:Nest.js 5 正式版发布了,主要改进内容包括: 功能特性 core:支持异步生命周期钩子(OnModuleInit和OnModuleDestroy)#569 core:HTTP服务器独立性,fastify 整合(FastifyAdapter) core:允许绑定来自任何模...

Nest.js 5 正式版发布了,主要改进内容包括:

功能特性

  • core:支持异步生命周期钩子(OnModuleInit和OnModuleDestroy)#569

  • core:HTTP服务器独立性,fastify 整合(FastifyAdapter)

  • core:允许绑定来自任何模块的全局拦截器,过滤器,管道和看守器。例:

{
  provide: APP_INTERCEPTOR,
  useClass: LoggerInterceptor,
}
  • core:@UseGuards(),@UsePipes(),@UseFilters(),和@UseInterceptors() 延伸,而不是重写现有的元数据

  • core:无处不在的注入(管道,过滤器,拦截器和看守器)

  • core:传递 ArgumentsHost 给异常过滤器器(访问每个参数的能力)

  • core:通过增强 ExecutionContext 到拦截器和看守器(访问每个参数和执行上下文的能力)

  • 微服务:重写现有的传输器(TCP,Redis),提供新的策略:Nats,MQTT,gRPC

  • 全部:提高执行上下文性能(http,ws,microservices)

Bug 修复

  • 普通:移除 multer 依赖#532

  • 核心:悬挂 NestApplicationContext 过程#503

  • 微服务:并发问题(包括TCP和 Redis 传输器)#505

改进

  • 全部:删除 reflect-metadata 依赖关系#563

  • 全部:将 RxJS 升级到6.0.0

  • all:升级Node.js> = 8.9.0(TypeScript目标es2017)

  • 核心:更多描述性例外(循环依赖)#493

  • 核心:与useContainer()(class-validator和typeorm封装)#528兼容的嵌套容器

  • 核心:移除静态依赖(webpack兼容性)

  • websockets:@WebSocketGateway()接受传递给socket.io实例#508的选项参数

弃用

  • 通用:弃用@Component(),@Middleware(),@Interceptor(),@Pipe(),和@Guard()装饰器(使用@Injectable()替代)

  • 常见:删除ExpressMiddleware(使用MiddlewareFunction)

  • 核心:弃用modules: [](使用imports: [] )

  • 核心:弃用components: [](使用providers: [])

  • 核心:删除MiddlewaresConsumer(使用MiddlewareConsumer)

值得注意的是

  • 从传统的 express中间件模式转向每个中间件都被限制在一个特定的路由上,而不管请求方式如何

另外,这个版本支持将底层的 express 替换为 fastify (号称最快的 Node.js 框架)

5.0 中文文档:https://docs.nestjs.cn/5.0/firststeps


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

世界因你不同

世界因你不同

李开复、范海涛 / 中信出版社 / 2009-9 / 29.80元

这是李开复唯一的一本自传,字里行间,是岁月流逝中沉淀下来的宝贵的人生智慧和职场经验。捣蛋的“小皇帝”,11岁的“留学生”,奥巴马的大学同学,26岁的副教授,33岁的苹果副总裁,谷歌中国的创始人,他有着太多传奇的经历,为了他,两家最大的IT公司对簿公堂。而他的每一次人生选择,都是一次成功的自我超越。 透过这本自传,李开复真诚讲述了他鲜为人知的成长史、风雨兼程的成功史和烛照人生的心灵史,也首次全......一起来看看 《世界因你不同》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

SHA 加密
SHA 加密

SHA 加密工具