Requirejs 使用AMD生成输出require()构造

Requirejs 使用AMD生成输出require()构造,requirejs,typescript,amd,Requirejs,Typescript,Amd,我目前有一组RequireJs模块,定义如下: require(['dep1', 'dep2'], function(dep2, dep2) { ... }); 我希望将这些转换为TypeScript模块,但是AMD一代会使用define结构输出它们: define(['dep1', 'dep2'], function(dep2, dep2) { ... }); 我可以看出它们在本质上是等价的。然而,我一直在以下基础上工作: 定义:当您希望能够将模块传递到其他模块时。 Req

我目前有一组RequireJs模块,定义如下:

require(['dep1', 'dep2'], function(dep2, dep2) {
    ...
});
我希望将这些转换为TypeScript模块,但是AMD一代会使用define结构输出它们:

define(['dep1', 'dep2'], function(dep2, dep2) {
    ...
});
我可以看出它们在本质上是等价的。然而,我一直在以下基础上工作:

定义:当您希望能够将模块传递到其他模块时。 Require:当只需要执行模块时
这些假设是多余的吗?或者是否有方法指示TypeScript为模块输出require构造?

您可以使用require手动编写一个文件来加载其他模块,或者使用元素loading require.js上的data main属性

这些假设是多余的吗

对。仅当您希望延迟加载时才应使用require

是否有方法指示TypeScript为模块输出require构造


对。使用requirejs定义:并编写代码手动调用require函数

好的,只是澄清一下,没有办法从模块语句输出require构造,对吗?我遇到的问题是,我在模块内定义了一个类,以避免污染全局名称空间。然而,TypeScript抱怨类必须在模块内声明或是顶级语句。您是否建议只使用导出模块,而不必担心它是一个输出的定义构造?。您是否建议只使用导出模块,而不必担心它是一个输出的定义构造?对