我正在使用DOJO 1.8.3,我的代码每次都会中断。我一直收到parser.parser
错误。
帮助我理解这一点:如果我使用require(["dojo/some-module"]
,如果我使用require
加载一次模块,那么我们不应该再次使用require加载相同的模块,但如果我这样做,事情就不会工作。我应该只使用一次parser.parser()
吗?请解释一下。
答案 0 :(得分:1)
模块将在require
定义的闭包内定义。所以这是合法的:
require(['dojo/some-module'], function(someModule) {
someModule.someFunction(); //inside the closure scope
});
但这不是:
require(['dojo/some-module'], function(someModule) {
// stuff
});
someModule.someFunction(); //outside the closure scope
因此,如果您需要使用parser.parse()
,则需要在require
函数回调中使用它:
require(['dojo/parser'], function(parser) {
parser.parse();
});