【发布时间】:2020-04-15 20:18:45
【问题描述】:
我是 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 文件,而不是预期的ts 文件。我的问题是如何包含 type definitions 文件?
谷歌搜索,我发现package.json 文件有一个types 字段,我们将路径分配给index.d.ts,在我的例子中是dist/index.d.ts。但它不是唯一具有类型定义的文件。 dist 目录中的许多目录中还有许多其他目录。
如何在最终的工件中包含所有这些类型定义?我还尝试将dist/**/*.d.ts 分配给package.json 中的types 字段,但它不起作用。
我还想知道将类型添加到 TypeScript 包的正确方法是什么。
【问题讨论】:
标签: node.js typescript typescript-typings package.json