我正在使用require Js,并且对于为什么我的模块正在加载但依赖关系总是未定义,甚至在使用require.defined()函数来检查模块是否已加载它确实具有但是当我使用require([deps],function(deps){});所有我的依赖关系是不确定的(除了jquery的,下划线和敲除)RequireJs依赖始终未定义
我的文件结构如下 我的文件结构如下
scripts
|
|
main.js
|
|_________BusinessScripts
| |
| |
jquery.js |
| |
| boostrapper.js-undefined
ko.js |
|
dataservice.js-undefined
这是我的主文件的一个例子序幕需要
requirejs.config(
{
paths: {
'jquery': 'jquery-1.7.1',
'underscore': 'underscore',
'ko': 'knockout-2.2.1'
},
shim: {
underscore: { exports: '_' },
}
}
);
requirejs(['require', 'BusinessScripts/bootstrapper', 'BusinessScripts/dataservice'],
function (require,bootstrapper, dataservice) {
var def = require.defined('BusinessScripts/bootstrapper'); //this returns true
if (dataservice !== undefined) { // always undefined
alert("Loaded properly");
} else {
alert("not loaded!!!");
}
if (bootstrapper !== undefined) { // always undefined
alert("Loaded properly");
} else {
alert("not loaded!!!");
}
});
我的数据服务类也相当漫长的jQuery得到,但作为一个简单的例子,我的引导程序旁边做着什么
//bootstrapper
define(function() { var one = 1;
var run = function() {
}
});
//dataservice
define(['jquery', 'underscore'],function ($, _) {
$.ajax({lengthy work...});
});
正如我所说的这两个模块被加载但从未解决
任何帮助,将不胜感激。
现货!现在它非常明显 – Infolord101