我应该在package.json中为“类型”字段使用哪些值?

时间:2019-12-24 23:05:15

标签: node.js typescript typescript-typings package.json

我是JS / TS领域的新手,出于学习目的,我正在TypeScript中创建NPM软件包。在构建工件并将其推送到注册表之前,我使用tsc命令将TS文件编译为JS文件。以下是我的tsconfig.json

{
    "compilerOptions": {
        "target": "es6",
        "module": "commonjs",
        "declaration": true,
        "outDir": "./dist",
        "strict": true
    },
    "include": ["src/"],
    "exclude": [ "node_modules/", "tests/" ]
}

编译后,dist文件夹与我的src目录具有相同的目录结构,但是它具有所有js文件和.d.ts文件,而不是{{1} }文件。我的问题是如何包含ts文件?

对此进行了搜索,我发现type definitions文件中有一个package.json字段,并为其指定了types的路径,在我的情况下,该路径为{{1} }。但这不是唯一具有类型定义的文件。 index.d.ts目录中许多目录中都有许多其他文件。

如何在最终工件中包含所有这些类型定义?我还尝试将dist/index.d.ts分配给dist中的dist/**/*.d.ts字段,但是没有用。

我还想知道向TypeScript包添加类型的正确方法是什么。

1 个答案:

答案 0 :(得分:0)

一种选择是再次在index.ts中export所有有用的类型,以便最终将它们包括在index.d.ts中。我相信AWS SDK就是这样做的。

例如,在index.ts中:

从'./other-file.ts'导出{MyType,MyService,MyOption};

因此您可以将其放在package.json

“类型”:“ dist / index.d.ts”