tsc tsconfig.json 设置编译成与 requirejs 兼容的 JS 类?

tsc tsconfig.json settings to compile to JS classes compatible with requirejs?

我有一个 Typescript 接口,一个抽象 class(实现接口),以及一个扩展抽象 class 的 class。我正在构建的这个 Typescript 库使用了很多 jQuery 并在其构造函数中将 $ 作为参数。

我想使用 tsc 将其编译成 Javascript classes 将使用 reactjs 包含在内,目标是 Webkit / Safari 537。

我正在使用 requirejs 添加 jQuery 和生成的库如下:

define(["jquery","vham"],function ($,VHAM) {
    alert('$: ' + $);        // This exists
    alert('VHAM: ' + VHAM);  // This crashes
 ...

js/app/main.js

我所有的库javascript代码输出到js/lib/vham.jsvham.jstsc 编译器的输出。 tsconfig.json 中哪些设置适合编译我的 classes 以用作使用 requirejs 包含的依赖项?

RequireJS 使用异步模块定义 (AMD)。您需要告诉 tsc 以 AMD 格式生成模块。具体来说,您需要将 --module 标志设置为 "AMD".

有关详细信息,请参阅 Typescript 编译器选项:

https://www.typescriptlang.org/docs/handbook/compiler-options.html