如何使用 TypeScript 在 AMD 模块中定义依赖模块,例如,包括 jQuery 和下划线。例如,我使用 JavaScript,就像这样:
define('moduleA',
['jquery', 'underscore'], function ($, _) {
}
});
如何才能让 TypeScript 编译器生成这段代码。
最佳答案
使用当前编译器 (0.8) 的实现方式如下。
测试.ts:
import jquery = module("jquery");
import underscore = module("underscore");
export module A {
console.log(jquery.$ + underscore._);
}
jquery.ts:
export var $ = null;
下划线.ts:
export var _ = null;
如果您使用模块开关编译 test.ts:
tsc --module AMD test.ts
它将为您生成以下 JS 文件:
define(["require", "exports", "jquery", "underscore"], function(require, exports, __jquery__, __underscore__) {
var jquery = __jquery__;
var underscore = __underscore__;
(function (A) {
console.log(jquery.$ + underscore._);
})(exports.A || (exports.A = {}));
})
请注意,如果您将 import 语句放入模块中,由于存在错误,它会正确记录代码生成。该团队目前正在修复该项目,但希望这不会阻止您。
关于typescript - 如何在 TypeScript AMD 模块中定义依赖模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12783025/