我有以下简单的结构:
的index.html
...
<script src="static/js/lib/require.js" data-main="static/js/main"></script>
</head>
...
静态/ JS / main.js
requirejs.config({
baseUrl: 'static/js',
paths: {
m: 'modules'
}
});
require(['m/test01'], function(test01) {
console.log(test01.print());
});
静态/ JS /模块/ test01.js
define(['m/test02'], function(test02){
return {
print: function() {
return 'test01 and '+ test02;
}
};
});
静态/ JS /模块/ test02.js
define(function() {
return 'test02';
});
现在我直接打开index.html(file:///index.html)一切顺利。脚本加载工作,并在控制台中记录“test01和test02”。
但是,如果我通过xampp(localhost / requiretest / index.html)打开,test01.js的加载进展顺利,但对于test02.js我在控制台(Firefox)中收到此错误:
NetworkError: 404 Not Found - localhost/01-test-grunt/static/js/test02.js
(removed "http://" before localhost for stackoverflow)
如您所见,URL中缺少'modules /'部分。 任何人都知道可能会发生什么?
注意:当我将baseUrl更改为'static / js / modules'时它确实有效,但由于我的grunt构建过程,我无法做到这一点。无论如何,我认为其他路径也不会被加载,所以这是一个错误还是我做错了什么?