TypeScript tsc
outputs something like
define("app", ["require", "exports", "foo", function(foo) {
// ...
});
Can we make it output an anonymous module like
define(["require", "exports", "foo", function(foo) {
// ...
});
It depends.
TypeScript emits named defines when --outFile
option is present, requesting it to generate single file (bundle) containing all compiled modules. Then, when module format is amd
, each module will be represented as named define
call, because AFAIK it does not make sense to have multiple anonymous defines in one file.
Anonymous define
is emitted when --outFile
is absent, then you have either --outDir
or default behavior of generating .js
files next to .ts
files, and for amd
module format each module is emitted as separate file that contains anonymous define
.