如何解决`tsc` 命令是否接受 .d.ts 文件?
我有一个 .d.ts 文件,想将其编译为 .js 文件。这可以使用 tsc
命令吗?
我知道 tsc
命令可以获取任何 .ts 文件,然后将其编译为 .js 文件(我已经对此进行了测试)。但是,我无法将 .d.ts 文件作为输入,因为它没有为我输出任何 .js 文件。
我尝试使用 tsconfig.json 和我的文件现在的样子:
{
"compilerOptions": {
"target": "es5","module": "commonjs","sourceMap": true,"outDir": "ali_output_javascript"
}
}
我还了解以下有关 .d.ts 和 .ts 文件的信息。 Typescript 声明文件 (.d.ts) 描述了 JavaScript 文件的形状。它允许您在 TypeScript 中使用现有的 JavaScript 代码,而无需在 TypeScript 中编写所有代码。 Typescript 文件 (.ts) 只是使用 typescript 编写时的标准文件扩展名。
从这篇中等文章 (https://medium.com/jspoint/typescript-compilation-the-typescript-compiler-4cb15f7244bc) 来看,它确实说 TypeScript 编译会查找文件扩展名 .ts 和 .d.ts:
通常,您会使用 files 或 include 选项并提供文件路径或 glob 模式以在编译过程中包含 TypeScript 文件。但是,您可以从 glob 模式中删除 .ts 扩展名,并让 TypeScript 编译器搜索输入文件。 当 glob 模式没有文件扩展名时,TypeScript 会在 glob 模式指向的目录中查找以 .ts 或 .d.ts 扩展名结尾的文件。 .d.ts 文件是一个 TypeScript 声明文件,我们在声明文件课程(即将推出)中讨论了这种文件类型。当 allowJS 编译器选项设置为 true 时,TypeScript 也会搜索 .js 文件。
如果您有任何建议,请告诉我,感谢您抽出宝贵时间。
解决方法
您误解了 .d.ts 文件是什么。
它们不应该被转换成 .js 文件,.ts 文件应该被转换成 .js 文件和 .d.ts 文件以在 JavaScript IDE 中进行强类型,或用于进一步用于 TypeScript 项目。
此外,.d.ts 不是可执行文件,也不能生成可执行文件,因为它们只是带有类型的空壳,也称为 环境声明,在 TypeScript 术语中,这意味着“没有实现”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。