requirejs加载有依赖关系的模块时报错
这个问题很奇怪,假如有两个模块,一个是pop,一个是callrestutil, pop是一个简单的弹窗模块,不依赖其他模块;callrestutil是一个ajax请求模块,依赖于pop模块做一些alert操作。
如果仅仅加载pop模块,不会报错:
require(['pop'], function(pop) {
pop.alert('测试');
})
如果加载callrestutil模块,就会报错:
require(['callrestutil'], function(callrestutil) {
// 这里有一些ajax的操作
callrestutil.send(..., function(data){
//...
})
})
报错信息为:
require.js:168 Uncaught Error: Script error for "pop", needed by: callrestutil
http://requirejs.org/docs/errors.html#scripterror
at makeError (require.js:168)
at HTMLScriptElement.onScriptError (require.js:1738)
在chrome的network面板内,可以看到对pop.js的加载:
但是这个url我直接右键 open in new tab,是可以打开的。
callrestutil模块定义为:
define(["ajaxutil", 'uri', 'pop'], function(ajaxUtil, Uri, Pop) {
var util = {};
var traceid;
util.sessionfilter = function(code, indexIM) {
if (code == "0000201") {
var aa = indexIM.indexOf("/npage/indexIM");
var bb = indexIM.indexOf("/npage/register");
if (aa != -1 || bb != -1) {
return false;
} else {
return true;
}
} else {
return false;
}
},
...
我的requirejs在页面的底部载入:
<script src="/appframe/kernel/require.js"></script>
<script src="/appframe/kernel/coreutil.js"></script>
requirejs的配置在coreutil.js内:
require.config({
baseUrl: '/appframe/component',
paths: {
commonutil:"buss/private/callrestutil",
pop:"buss/private/pop",
...
}
});
麻烦大神帮忙看看这是为什么,参考文档:
http://www.ruanyifeng.com/blo...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最后问题找了, 竟然是因为我安装了Adblock Plus插件... 让我哭一会.....