如果我运行$ tsc --out foo.js MyFile.ts
我会得到文件foo.js
. 但是,如果我指定--module commonjs
选项,则--out
参数将被覆盖,并且我得到MyFile.js即:$ tsc --out foo.js --module commonjs MyFile.ts
鉴于我在 TS 代码中使用export
赋值以使我的类可用于我的 NodeJS JS 代码,我显然需要--module
标志。 但是我认为忽略/覆盖--out
标志值是一个错误。
原因是我想用 .gen 为生成的 JS 代码添加后缀.js这样我就可以编写一个 SCM 规则来忽略生成的代码。
$ node --version && tsc --version
v0.10.22
Version 0.9.7.0
对于多个模块的文件,--out
被忽略,因为不清楚这意味着什么(如果你指定了tsc --out foo.js Module1.ts Module2.ts
,Module1
在哪里require
Module2
?)。
这里的理论是,如果您希望将文件命名为其他名称,则可以使用外部构建工具(grunt,jake,make,frakes等)重命名文件。很少打算将外部模块文件编译为其他文件名,因为它可以编译但不运行。
您可以对 CodePlex 问题进行投票,以表示您对实施此后 1.0 的支持。