+1
之前很多插件不支持ts~ 大佬 egg+ ts 的教程: https://cnodejs.org/topic/5ac5ecdee34737560fccaa40
当然,我们因为对 ts 的喜爱,直接选用了 nest.js
@zuohuadong 其实那不叫很多插件不支持 ts 功能,因为插件都是 js 写的,只是需要补一下 d.ts ,仅此而已。对于熟悉 TS,都要用 TS 写应用的同学,随手补下 d.ts PR 应该很快的。
@atian25 不过一些比较核心的插件也这么补的话,还是觉得难受。 ts 还是得有 ts 的生态。 分个ts核心版,js核心版。。。
没分啊。。。就是提个 PR 去那个插件,写个 d.ts 而已。一次提交,其他人就都能用了。
最近的项目也从egg/koa转nestjs了,类型系统+依赖注入还是好用很多
ts只是方式,我觉得和框架和插件什么根本没有太大关系,egg团队有提供ts的方式,可以去看那个ts的样板。说插件不支持和生态什么的,我觉得都是没理解ts,插件也是需要其他原型的,要使用ts,了解了插件的核心原理,比如egg-redis,load到app上,只需要自己添加d.ts中对于app对象的扩展声明就可以给redis对象上类型了,毕竟ts并不是java那些,也不是面向对象,要真正用ts写代码,而且是在框架轮子上写代码,最基本的d.ts总要理解的。另外,类型系统、依赖注入,个人觉得,还是去搞java方便得多。