【问题标题】:dojo looking for build.js in wrong pathdojo 在错误的路径中寻找 build.js
【发布时间】:2012-09-13 14:32:15
【问题描述】:

我正在尝试使用 Eclipse Juno 64 位作为开发环境在本地 Tomcat (7.0) 服务器上运行我的 dojo 项目。

我昨天遇到了一个问题,关于 dojo 如何假定文件在源树中的存储位置。

下面是显示问题的萤火虫日志:

304 Not Modified 23ms dojo.js (Line 295)
GET http://localhost:8080/src/dojo-18/dojo/parser.js

304 Not Modified 46ms dojo.js (Line 295)
GET http://localhost:8080/src/dojo-18/dojo/util.js

404 Not Found 24ms dojo.js (Line 295)
"NetworkError: 404 Not Found - http://localhost:8080/src/dojo-18/dojo/util.js"

前 2 个路径(以及之前的很多路径)已正确加载,现在第三个路径不正确,基础 dojo 文件夹中没有 util.js,我不知道为什么 dojo 会在那里。

为了解决这个问题,我尝试使用 baseUrl 属性更好地描述路径

<script>
    dojoConfig = {
        isDebug: true,
        parseOnLoad: false,
        baseUrl: './src/dojo-18/',
    };
</script>

dojo.js 是这样引用的:

<script src="./src/dojo-18/dojo/dojo.js"></script>

【问题讨论】:

标签: dojo


【解决方案1】:

Dojo 本身并不寻找util.js,如果它这样做,你已经自己导入了一个名为 util 的模块,例如:

require([ "dojo/util" ], function(util) {
    // This will not work because the util module does not exist
});

如果要引用自定义模块,必须先使用dojoConfig配置包:

<script>
    dojoConfig = {
        isDebug: true,
        parseOnLoad: false,
        baseUrl: './src/dojo-18/',
        packages: [{
            name: 'custom',
            location: '/path/to/custom'
        }]
    };
</script>

然后您可以使用以下方法引用该包中的模块:

require([ "custom/util" ], function(util) {
    // This will load the custom util module
});

在这种情况下,Dojo AMD 加载程序将在 /path/to/custom 文件夹中查找 util.js,因此它将变为:

/path/to/custom/util.js

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 2012-07-01
    • 1970-01-01
    相关资源
    最近更新 更多