npm包的可安装的typescript类型定义

时间:2018-03-15 13:51:23

标签: node.js typescript npm packages typescript-typings

打字是Typescript的最佳功能之一,我发现在javascript项目中采用它非常有用,但是使用和最佳实践没有记录得非常有效,这给开发人员带来了很多困惑。

例如我的名为my-awesome-pkg的npm包,对于这个包我们有兴趣拥有@typings,用户可以使用npm npm install @types/my-awesome-pkg安装它

我知道如何在include中使用filestsconfig.json来包含和使用项目中的@typings:

"include": [ "< path to your typing file>" ]

但这不是我想要的,我有兴趣知道,如何为我的项目创建可安装的@typings,因此用户不会因为我的npm包的类型而感到沮丧这样做有一个标准的做法。

谢谢,

1 个答案:

答案 0 :(得分:2)

因此,如果你的项目是用TypeScript编写的,你所要做的就是在项目的tsconfig.json中设置以下标志:

"declaration": true,
"declarationDir": './anyFolderYouLike'

这将在运行tsc时为您的TypeScript项目生成类型。有关如何配置tsc的详细信息,请参阅here

许多人在DefinitelyTyped上托管他们的类型。这样就可以按照你想要的方式安装类型。

我看到越来越多的人用他们自己的包装提供他们的类型。这样就不需要单独安装它们。如果你想这样做,你应该在package.json中指定类型位置,即:

"types": "./lib/index.d.ts"

有关发布的更多整体信息,请参阅TypeScript publishing documentation