1

我正在尝试使用命令行程序tsc将我的文件编译.ts成 amd 模块。

这是示例文件test.ts

module Test {
  var x = 1;
}

这是我用来生成输出的命令: tsc --module amd test.ts --out test.js

这是我生成的test.js

var Test;
(function (Test) {
    var x = 1;
})(Test || (Test = {}));

我期待看到引用requireand的第一行,define例如: define(["require", "exports"], function(require, exports) {

关于为什么这个输出不像它看起来应该的那样的任何线索?如果我module amd从命令中删除,我会得到完全相同的test.js文件输出。

这是我的 tsc 版本:

$ tsc --version
Version 0.9.1.1
4

1 回答 1

2

检查 TypeScript 语言规范(相当易读,顺便说一句),了解外部模块和内部模块之间的区别。

$ cat module.ts
export var x = 1;

$ tsc --module amd module.ts

$ cat module.js
define(["require", "exports"], function(require, exports) {
    exports.x = 1;
});
于 2013-10-03T20:58:49.707 回答