0

我在两个单独的 js 文件中有两个“定义”。

def1.js 和 def2.js

define("mydefname1",["file1",...]});

define("mydefname2",["file2",....]});

我有另一个 require 语句,我在其中检查两个定义是否已加载。

require(['def1','def2'], function(){alert('loaded')});

这工作正常..

但如果我尝试

require(['mydefname1','mydefname2'], function(){alert('loaded')});, 

这没用。

有没有办法我可以实际使用 mydefname1 和 mydefname2 .. 即加载它们的模块名,而不是文件名?

4

2 回答 2

0

据我了解,RequireJS 建议您避免手动分配模块名称 - 请参阅此处:http ://requirejs.org/docs/api.html#modulename

FWIW,你玩过“路径”配置选项吗?我不认为你可以用它来做你想做的事,但它可能会提供一种可接受的替代方法。见这里:http ://requirejs.org/docs/api.html#config

希望能帮助到你!

于 2011-05-17T19:32:20.483 回答
0

据我所知,这是不可能的。我通常做的是格式化我的文件名以包含我的模块名称,所以我可以这样包含它。

对于元类名称 Overlay,文件名将是 class.Overlay.js,我的 require/include 函数将获取我的模块名称并从中构建文件名。

于 2011-04-14T21:08:55.830 回答