我正在尝试做需要优化器的浏览器示例。我的文件夹结构是这样的r.js和build.html与js文件夹
位于同一级别js
lib
| a.js
| b.js
| c.js
scripts
| 1.js
| 2.js
| 3.js
main.js
在main.js中我指定了这样的路径
require.config({
baseUrl : 'js',
paths: {
'1' : 'scripts/1',
'2' : 'scripts/2',
'3' : 'scripts/3',
}
});
和我包括脚本模块,如
define(function (require, exports, module) {
"use strict";
//load Modules
var one = require('1'),
two = require('2'),
three = require('3');
......
.....
})
和我的构建。html有这样的配置
{
baseUrl: 'js',
mainConfigFile: 'js/main.js',
name: 'main',
optimize: 'none',
out: function (text) {
document.getElementById('output').value = text;
}
}
但它不是构建,我可以看到1,2,3个文件被r正确加载(在我看到的开发工具网络中),但得到一个路径错误,如root/js/js/lib/a.js,
不知道为什么js/js是重复的,因为1,2,3文件加载正确。我尝试了一些组合,从构建添加中删除"js"。"等。
相对路径的实际错误是什么?我应该在主和构建配置中指定什么路径?
Thanks in advance
Ok…最后我解决了路径问题。
我正在加载文件在lib
在其他文件如require('js/lib/a')
, require('js/lib/b')
等
当我把这个也作为路径时,问题就解决了。
paths: {
'1' : 'scripts/1',
'2' : 'scripts/2',
'3' : 'scripts/3',
'a' : 'libs/a',
'b' : 'libs/b',
'c' : 'libs/c'
}
为避免混淆,请记住
- 使用通用的baseUrl作为主文件和构建文件。