Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

完善TS支持 #97

Open
Enivel opened this issue Jan 29, 2023 · 1 comment
Open

完善TS支持 #97

Enivel opened this issue Jan 29, 2023 · 1 comment

Comments

@Enivel
Copy link

Enivel commented Jan 29, 2023

开发团队的同学新年快乐

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

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

@heimanba
Copy link
Member

开发团队的同学新年快乐

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

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

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

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants