唯一能于 Spring 一战的 node 框架 —— Nest.js 中文文档 翻译进行中 (80%)
发布于 7 年前 作者 zuohuadong 20421 次浏览 来自 分享

中文文档在线查看地址: https://docs.nestjs.cn

翻译仓库地址: https://github.com/nestcn/docs

欢迎提交PR

也欢迎支持我们的开源项目: https://github.com/notadd/notadd/tree/next

29 回复

还挺快的,看起来 TS 就是爽一些,不过团队开发还是约定更重要,Egg 也不来,就是 TS 的编译,有点尴尬。nest 没有多进程,egg 那种多进程通行的那种。我看他重启都是 nodemon,ts 用的 ts-node/register 这是个好东西,用了那么多 ts-node 还不知道有 register 。 其实 egg 也可以改造成装饰器风格的,在加一个库就可以自动依赖注入,没时间去思考去尝试,最近写书,要超过时间了,不知道怎么跟编辑老师交代,还在想怎么甩锅呢,哈哈。 你不是说 express 架构不好么,还推它。 😂😂

@MiYogurt nest 用到 express 的地方不多,只用到了 http 服务 和 一些插件~ 基本可以忽视~

从 架构上来说,nest.js 确实有跟 spring 比较的实力, EGG 就差太远了~

通过一些装饰器的写法,让项目看起来规范写。

但是如果不这么写,也没啥毛病,不会像egg那样报错。

源码里面,有些装饰器啥也没做,就是为了好看:

最近也在开发一个Koa+Typescript的框架,使用依赖注入风格加载服务,Controller里面用装饰器风格的路由,都借鉴了nest和egg。

egg的思想: 约定大约配置。只要使用者没有按照约定,那么运行就boom。

nest: 依赖注入,OOP,装饰器,Controller, service等概念

/**

* Defines the Component. The component can inject dependencies through constructor.

* Those dependencies should belongs to the same module.

*/

export function Component(): ClassDecorator {

return (target: object) => {};

}

/**

* Defines the Pipe. The Pipe should implements the `PipeTransform` interface.

*/

export function Pipe(): ClassDecorator {

return (target: object) => {};

}

/**

* Defines the Guard. The Guard should implement the `CanActivate` interface.

*/

export function Guard(): ClassDecorator {

return (target: object) => {};

}

/**

* Defines the Middleware. The Middleware should implement the `NestMiddleware` interface.

*/

export function Middleware(): ClassDecorator {

return (target: object) => {};

}

/**

* Defines the Interceptor. The Interceptor should implement `HttpInterceptor`, `RpcInterceptor` or `WsInterceptor` interface.

*/

export function Interceptor(): ClassDecorator {

return (target: object) => {};

}

来自酷炫的 CNodeMD

@axetroy typeorm 有中文文档没?

@zuohuadong 现在没有看见哦,赶紧去翻译,支持

Nest.js 一个充满艺术的框架。 这个框架很Angular. 如果想代码有更好的组织,看了不少框架,这个不错。

有空尝试下

@MiYogurt 5.0 支持 express 或者 fastify 了,nest 拿他们当 http 服务器用

打算下个项目就开始用这个了

真的很感谢

@MiYogurt 在写什么书啊:)

@MiYogurt 多进程可以配合pm2啊 不过egg的多进程更多是为业务服务的 如果谁把egg这个多进程开发模式提取为一个模块出来那也是极好的

@chapgaga 写完了啊。我的话题里面我有发我书的名字呀。

@phper-chen 最主要还是 egg-cluster nest.js 不包含进程通信

@chapgaga 一本实体书 Node.js实战:使用Egg.js + Vue.js + Docker构建渐进式、可持续集成与交付应用

@MiYogurt Node.js实战是翻译?

@chapgaga 不是翻译,是真实战。 =。=

@MiYogurt 有本同名的书,好像是翻译的,你是哪本?

@chapgaga 《 Node.js实战:使用Egg.js + Vue.js + Docker构建渐进式、可持续集成与交付应用》

@MiYogurt 有没有nest.js 相关的?

@zuohuadong 玩不动了,同一个工具学多了没啥用,没必要左手 react 右手 vue。

@zuohuadong 有机会的话我会研究,可能性不大,因为我更宁愿研究 ts 底层。

@phper-chen 目前用的pm2 和 docker ,坐等移植。

刚学会用egg.js ,需要现在转next.js吗?typescript还没学。。

@assmdx 看个人喜好和工作内容吧。 如果对 java 那套 AOP 思想比较喜欢,又是团队协作的话,推荐 nest,js

回到顶部