打字是Typescript的最佳功能之一,我发现在javascript项目中采用它非常有用,但是使用和最佳实践没有记录得非常有效,这给开发人员带来了很多困惑。
例如我的名为my-awesome-pkg
的npm包,对于这个包我们有兴趣拥有@typings,用户可以使用npm npm install @types/my-awesome-pkg
安装它
我知道如何在include
中使用files
或tsconfig.json
来包含和使用项目中的@typings:
"include": [ "< path to your typing file>" ]
但这不是我想要的,我有兴趣知道,如何为我的项目创建可安装的@typings,因此用户不会因为我的npm包的类型而感到沮丧这样做有一个标准的做法。
谢谢,
答案 0 :(得分:2)
因此,如果你的项目是用TypeScript编写的,你所要做的就是在项目的tsconfig.json
中设置以下标志:
"declaration": true,
"declarationDir": './anyFolderYouLike'
这将在运行tsc
时为您的TypeScript项目生成类型。有关如何配置tsc
的详细信息,请参阅here。
许多人在DefinitelyTyped上托管他们的类型。这样就可以按照你想要的方式安装类型。
我看到越来越多的人用他们自己的包装提供他们的类型。这样就不需要单独安装它们。如果你想这样做,你应该在package.json
中指定类型位置,即:
"types": "./lib/index.d.ts"
有关发布的更多整体信息,请参阅TypeScript publishing documentation。