Serverless-Devs/core

完善TS支持

Enivel opened this issue · 1 comments

开发团队的同学新年快乐

我目前发现通过包管理工具引入的 core 库, 是编译后产出的文件, IDE和人都无法通过阅读代码获得输入参数, 而且项目中并没有包含类型声明文件来解决这个问题, 十分不利于模块开发工作. 而且核心库内的方法基本上都没有响应声明, 想获得一个方法的输出只能去查看实现

不太清楚是使用姿势的问题, 还是有意为之, 希望帮忙解答一下.

开发团队的同学新年快乐

我目前发现通过包管理工具引入的 core 库, 是编译后的文件,IDE和人无法通过阅读代码获得输入参数, 而且项目中并没有包含类型声明文件来解决这个问题, 十分不利于模块开发工作. 而且核心库内的方法基本上都没有响应声明, 想获得一个方法的输出只能去看你们的实现

不太清楚是使用姿势的问题, 还是有意为之, 希望帮忙解答一下.

也算是有意为之,core包在Serverless-Devs,一方面是作为Serverless-Devs 的 npm包的主要的实现依赖,另外一方面也作为组件的依赖。Serverless-Devs发布到npm仓库,组件发布到serverless registry。组件的更新和下载希望能够尽量的加速。所以组件层面都使用了esbuild或者NCC作为单独的bundle。同时因为组件和cli 都一定会使用core,同时组件依赖的core还比较复杂,因为不希望组件每次都去下载core包,所以组件这里的core包做了软链处理。

确实这里对于开发来说,没有类型声明比较黑盒,代码使用TS编写的,只不过是用esbuild成单独的bundle导致类型声明丢失。对于开发体验确实不太友好。需要高优解决哈