Nest.js 5 正式版:基于 TypeScript 的 Node.js 微服务框架 - 开源中国社区
Nest.js 5 正式版:基于 TypeScript 的 Node.js 微服务框架
左华栋 2018年05月15日

Nest.js 5 正式版:基于 TypeScript 的 Node.js 微服务框架

左华栋 左华栋 发布于2018年05月15日 收藏 18

【腾讯云】如何快速搭建微信小程序?>>>  

Nest.js 5 正式版发布了,Nest.js 是基于 TypeScript 面向切面编程的 Node.js 微服务框架,主要改进内容包括:

功能特性

  • 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]
本文标题:Nest.js 5 正式版:基于 TypeScript 的 Node.js 微服务框架
分享
评论(16)
精彩评论
3
看了代码,感觉就是angular。。。不同的是,它没有视图层。。:sweat_smile:
3

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼
不知道就BAIDU 不知道说还什么鬼 只显出知识贫乏的厉害
2
面向切面编程 是什么鬼
1

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼

引用来自“雨宮蓮”的评论

不知道就BAIDU 不知道说还什么鬼 只显出知识贫乏的厉害
这货是狗吧,贱人就咬
1
加油 在搞下去就成java了
最新评论
0

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼

引用来自“雨宮蓮”的评论

不知道就BAIDU 不知道说还什么鬼 只显出知识贫乏的厉害

引用来自“小马哥啊”的评论

这货是狗吧,贱人就咬

引用来自“雨宮蓮”的评论

菜B 你哪来的脸发言
真是不知道自己是个什么货色
才你吗b,还caibi,看看你5年,都在干什么?除了说这个人怎么,那个人怎么?对社区有什么贡献?你这种人有什么资格评价别人?猜你全家女性
0

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼

引用来自“雨宮蓮”的评论

不知道就BAIDU 不知道说还什么鬼 只显出知识贫乏的厉害

引用来自“小马哥啊”的评论

这货是狗吧,贱人就咬
菜B 你哪来的脸发言
真是不知道自己是个什么货色
0

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼
AOP
0
什么叫面相切片?
0
:joy:多年以后,终于变成了那个令人讨厌的自己……
0
装修器过渡使用..
0

引用来自“很拽De土豆”的评论

看了代码,感觉就是angular。。。不同的是,它没有视图层。。:sweat_smile:
本身就是参考了angular
3
看了代码,感觉就是angular。。。不同的是,它没有视图层。。:sweat_smile:
0

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼
AOP java 那一套
1

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼

引用来自“雨宮蓮”的评论

不知道就BAIDU 不知道说还什么鬼 只显出知识贫乏的厉害
这货是狗吧,贱人就咬
3

引用来自“小马哥啊”的评论

面向切面编程 是什么鬼
不知道就BAIDU 不知道说还什么鬼 只显出知识贫乏的厉害
1
加油 在搞下去就成java了
0
把啥都写java才是硬道理
2
面向切面编程 是什么鬼
0
硬翻。。
0
很好用~~
顶部