首页 > 解决方案 > 如何正确创建带有声明的 Typescript NPM 包?

问题描述

我觉得我正在为一些应该非常简单的事情而失去理智。

我有一些 TypeScript 文件,其中包含我想为 npm 包导出的代码。为了便于从 npm 包中自动导入,必须在 index.d.ts 中指定所有函数/常量等的类型(如果我理解正确的话)。

所以我的问题是,如果我有多个不同的 .ts 文件,每个文件都有自己的函数/常量,我如何创建一个包含所有文件中所有函数/常量的类型的单个 .d.ts 文件?没有这个,我必须手动导入包;例如,对于大多数其他库,我只需键入一个函数名称,就会建议导入。

标签: typescriptnpm

解决方案


我们有一些在节点微服务之间共享的私有 npm 模块。最近将它们升级为 TS。

我在这里的原因可能是错误的,但这对我们有用。“global.d.ts”文件不包含在编译文件中,因为它只是一个参考。

我们刚刚创建了一个带有 index.ts 的 types 文件夹,将我们的类型放在那里并将它们导入到所需的文件中。然后类型会包含在编译后的 index.d.ts 文件中。

将包安装到其他 TS 项目时一切正常。我也在墙上敲了一整天。


推荐阅读