我正在尝试打字稿,我发现它非常有用。
我有一个相当大的项目,我正在考虑使用打字稿重写它。这里的主要问题如下:
文件 A.ts:
class A extends B {
// A stuff
}
文件 B.ts:
class B {
// B stuff
}
如果我用这个命令编译 A.ts:
tsc --out compiledA.js A.ts
我会从编译器那里得到错误,因为他不知道如何在扩展后威胁“B”。
因此,“解决方案”将包括在 A.ts 中(作为第一行代码):
/// <reference path="./B.ts" />
使用相同的命令再次编译 A.ts
tsc --out compiledA.js A.ts
将导致compiledA.js 包含B.ts 和A.ts 代码。(这可能非常好)
就我而言,我只需要在compiledA.js 文件中编译A.ts 代码,我不希望B.ts 的东西在那里。
确实,我想要的是:
- tsc --out A.js A.ts => 只编译 A.ts 的东西
- tsc --out B.js B.ts => 只编译 B.ts 的东西
我可以通过删除“扩展”关键字来做到这一点,但这样做我会失去大部分打字稿的优点。
有人可以告诉我是否有办法做到这一点?