将多个文件内部模块编译成一个文件AMD模块

时间:2014-01-21 14:56:50

标签: typescript

我有内部打字稿模块,这个模块被分成几个文件。

a.ts

/// <reference path='_all.ts' />    
module A {
  // some code
}

b.ts

/// <reference path='_all.ts' />    
module A {
  // some code
}

_all.ts

/// <reference path='a.ts' />
/// <reference path='b.ts' />

是否可以将此模块编译成一个文件并使其成为amd模块?

一般来说,如何将内部模块“导入”外部?例如,当我尝试添加新文件export.ts时:

/// <reference path='_all.ts' />
export module B {
   //some code that using module A
}

并将export.ts提供给tsc,它将其编译为export.js amd模块,但根本不包含“A”模块代码。

EDITED 示例:https://gist.github.com/artemkozlov/8550165

1 个答案:

答案 0 :(得分:0)

要编译为单个文件,请使用--out FILE命令行参数。这会将所有内部模块组合到一个文件中。要编译所有外部模块,因为AMD使用-m amd。在这两种情况下,您还需要-d,因为这将生成一个声明文件,以便与其他项目一起引用。

无法编译多个内部模块并生成单个外部模块。见12790262/how-to-spread-module-across-multiple-amd-files