所以我正在尝试设置 Typescript 和 Chutzpah 以进行测试。 Typescript 设置为以这种格式输出:
define(['require', 'exports', './someModule'], function(require, exports, someModule) {
//examplecode
});
这很好用,当 someModule 实际上是一个带有 index.js 的目录时就会出现问题。
/app
app.js
/someModule
index.js
require.js 无法以这种方式解析 someModule,测试失败。
有什么方法可以告诉 require.js 这是一个模块吗?
最佳答案
RequireJS 不会自动检查 index.js
是否存在并将其加载为您的模块。你需要告诉 RequireJS 当你想加载 someModule
时,它应该加载 someModule/index
。我会设置一个 map
在我对 require.config
的调用中:
require.config({
[ ... ]
map: {
'*': {
someModule: 'someModule/index',
}
},
});
您必须调整您在此处提供的名称,使其成为相对于您的 baseUrl
的路径。从您在问题中提供的信息中不清楚它应该是什么。
(作为记录,还有一个 packages
设置,您可以调整它来做您想做的事情,但是放置一些东西 packages
说“这是一个包”,这不是您所看到的在这里。所以我不会用它来做你想做的事情。)
关于javascript - require.js 需要一个带有 index.js 的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41816611/