1

我正在尝试做需要优化器的浏览器示例。我有这样的文件夹结构,并且r.jsbuild.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');
      ......
      .....
})

我的 build.htnl 有这样的配置

{
    baseUrl: 'js',
    mainConfigFile: 'js/main.js',
    name: 'main',
    optimize: 'none',
    out: function (text) {
        document.getElementById('output').value = text;
    }               
}

但它没有构建,我可以看到r正确加载了 1,2,3 个文件(在我看到的开发工具网络中),但是出现了类似root/js/js/lib/a.js的路径错误,

不知道为什么 js/js 重复,因为 1,2,3 文件已正确加载。我尝试了一些组合,从 build add '.' 中删除 'js' 等等..非组合不起作用。

相对路径中的实际错误是什么。我应该在主配置和构建配置中指定什么路径?

提前致谢

4

1 回答 1

0

好的..最后我弄清楚了路径问题。

我正在将文件加载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。
于 2013-06-18T07:32:38.953 回答