如何在dojo中获取当前文件名

时间:2013-07-15 15:56:07

标签: javascript dojo

如何使用dojo获取我所在的当前文件名。 我有一个javascript文件,我的断点在该文件中。我想知道文件名。 并使用dojo或javascipt我想得到这个文件的名称

任何帮助都将受到高度赞赏 谢谢

2 个答案:

答案 0 :(得分:1)

如果您使用的是AMD(Dojo 1.7+),您可以从特殊module模块获取当前模块的模块ID:

define([ 'module' ], function (module) {
  console.log(module.id);
});

如果使用旧版Dojo模块,则永远不会提供当前正在执行的脚本的文件名,并且无法以跨浏览器方式检索,因为它们是使用XHR和eval加载的。

答案 1 :(得分:0)

在dojo / tests / _base / loader / moduleIds.js中有一个例子:

function get(mid, refmod){
    return require.getModuleInfo(mid, refmod, require.packs, require.modules, "../../dojo/", require.mapProgs, require.pathsMapProg, 1);
}

我在我的一个模块中尝试了以下内容:

require.getModuleInfo("my/Module", null, require.packs, require.modules, "../../dojo/", require.mapProgs, require.pathsMapProg, 1).url

这解决了包含我的模块代码的javascript文件的路径...

这也有效:

require.modules["my/module"].url