所以我正在创建一个TypeScript库,我可以轻松地将所有生成的JS文件编译成一个文件。有没有办法将所有.ts和.d.ts编译成单个.ts文件?
除了JS支持的版本(较小的intellisense,只能调试生成的文件)之外,支持纯TypeScript实现的lib(对于那些需要良好的intellisense并且能够调试核心TS文件的人)会很高兴。 )。
一个解决方案是创建一个连接所有文件的powershell脚本,但我没有看到一个好的方法来动态地(因为依赖性)而没有按正确的顺序对所有文件名进行硬编码。
答案 0 :(得分:1)
您可以将文件编译为.d.ts和.js
如果您有多个打字稿文件并运行:
tsc --out mylib.js --declaration first.ts second.ts
您将获得(mylib.js + mylib.d.ts),然后您可以从typescript或javascript中使用它们。
您可以在此处查看示例:https://github.com/basarat/ts-test/tree/master/tests/compileToSingle
答案 1 :(得分:0)
您必须使用编译器的命令行参数
--out FILE
连接并将输出发送到单个文件
tsc --out modules.js main.ts app.ts
上述答案取自此链接
答案 2 :(得分:0)
我不认为有一个可用的Typescript专用工具可以让你基本上把所有文件组合在一起,但是如果你有一个构建脚本,只需编写一小段代码来找到项目中所有* .ts文件或所需范围,然后只需创建一个新文件并继续将这些现有文件追加到新文件中。然后,您将拥有一个较大的my-project.ts
,您可以使用tsc.exe
--declaration
标记(或类似名称)运行,然后输出my-project.d.ts
。< / p>
如果您想将其用作分布式库以供其他人使用,那么您将不得不以某种方式打包它,无论是一个大的.ts还是其他一些机制......我之前问了一个问题。 :