Nest.js 6改进了GraphQL的集成,并提高了平台的灵活性

最近,Nest.js发布了其TypeScript框架的第6版Nest.js 6改进了对GraphQL的支持,还解耦了其框架特定于平台的部分,以支持超越其传统Express和基于Node.js架构的应用程序。

Nest.js作者及Trilon.io联合创始人Kamil Mysliwiec解释了Nest.js 6中与GraphQL相关的变化:

GraphQL应用程序最常见的问题之一是类型冗余。为了解决这个问题,我们在Nest以前的版本中添加了编译器,允许开发人员把SDL定义编译为TypeScript接口(类)。Nest.js的6.0.0版本已经集成了amazingtype-graphql包,我们可以只使用TypeScript装饰器就可以生成GraphQL文件!现在,我们可以选择更适合我们需求的方法,它们都可以在@nestjs/graphql包中找到。

Nest.js 6.0.0版本的另一个重大变化是Nest.js超越了其作为服务器端框架的主要用途,成为一个更加灵活和通用的框架。Mysliwiec解释道:

平台独立性使开发人员可以创建可重用的逻辑组件,并在不同类型的应用程序中使用它们。利用Nest,我们可以轻松构建Web应用程序、CLI、作业队列或任何我们可以想到的东西!

下一个重大Nest.js计划包括重写Nest.js Swagger模块,以利用TypeScript AST,减少对装饰器的依赖,并添加对泛型、接口、循环依赖关系及自动响应模式生成的支持。Nest.js团队也计划改进DevOps工作流,以便支持并可部署到无服务器环境中。

对于服务器端的应用程序,Nest.js采用了HTTP服务器框架(如ExpressFastify),并提供与各种第三方模块(如TypeORM)的集成。Nest.js提供各种各样的架构模式和装饰器,包括控制器、路由器、provider、中间件、guard和拦截器。Nest.js还提供了控制器(IoC)反转容器架构。

希望迁移到6.0.0版本的Nest.js用户请遵循Nest.js迁移指南。新的Nest.js开发人员请遵循Nest.js入门指南

Nest.js是基于MIT许可的开源软件。欢迎通过Nest.js GitHub项目参与贡献和提供反馈,并遵循Nest.js贡献指南

阅读英文原文Nest.js 6 Improves GraphQL Integration and Improves Platform Flexibility

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章