输出 require() 构造与 AMD 代

Output require() construct with AMD generation

我目前有一组 RequireJs 模块定义为:

require(['dep1', 'dep2'], function(dep2, dep2) {
    ...
});

我希望将它们转换成 TypeScript 模块,但是 AMD 一代使用 define() 结构输出它们:

define(['dep1', 'dep2'], function(dep2, dep2) {
    ...
});

我可以看出它们本质上是等价的。然而,我一直在以下基础上工作:

这些假设是否多余?或者有没有办法指示 TypeScript 输出模块的 require() 结构?

您可以使用 require() 手动编写一个文件来加载其他模块,或者在元素加载 require.js.

上使用 data-main 属性

Are these assumptions redundant?

是的。 require 只应在您想要 延迟加载 时使用。

is there a way to instruct TypeScript to output the require() construct for a module

是的。使用 requirejs 定义:https://github.com/borisyankov/DefinitelyTyped/blob/master/requirejs/require.d.ts 并编写代码以手动调用 require 函数。