TypeScript可以输出匿名的AMD模块输出,而不是命名吗?

时间:2017-01-30 22:24:49

标签: javascript typescript amd

TypeScript tsc输出类似

的内容
define("app", ["require", "exports", "foo", function(foo) {
    // ...
});

我们可以让它输出像

这样的匿名模块
define(["require", "exports", "foo", function(foo) {
    // ...
});

1 个答案:

答案 0 :(得分:0)

取决于。

当存在--outFile选项时,TypeScript会发出命名定义,请求它生成包含所有已编译模块的单个文件(包)。然后,当模块格式为amd时,每个模块将表示为名为define的调用,因为AFAIK在一个文件中有多个匿名定义没有意义。

define不存在时会发出匿名--outFile,然后您有--outDir或在.js文件旁边生成.ts个文件的默认行为,以及对于amd模块格式,每个模块都作为包含匿名define的单独文件发出。