parser.js 在 Google CDN 上找不到 dojo 1.10.3
parser.js not found on Google CDN for dojo 1.10.3
我正在使用 Google CDN 以获取 DOJO。
这是我在网站中使用的代码。
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/dojo.js"></script>
像这样调用我的代码模块时 'dojo/parser'
define([
'dojo/topic',
'dojo/parser',
'dijit/registry'
], function (topic, parser) {
var instance;
function Test() {
}
Test.prototype = {
init: function () {
}.bind(this));
}
};
return function getInstance() {
return (instance = (instance || new Test()));
};
});
我收到 404 未找到模块 parser
。
它实际上指向 Google CDN 地址:
http://ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/dojo.js/parser.js
- 为什么 CDN 上缺少模块?还是我的代码中遗漏了什么?
- 知道从哪里或如何加载它吗?
注意:如果我手动更改地址为
http://ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/parser.js
我得到了文件,可能是一个错误?
问题不在 URL 内,但可能是由于一些使用 dojoConfig
配置的自定义包。
这是一个有效的示例(无需额外配置):http://plnkr.co/edit/xgEi6qAPqKSNrUaoOQch?p=preview
如果您有自定义模块并且正在使用 CDN,您可能应该遵循 this article 中描述的指南。例如:
<script>
var dojoConfig = {
async: true,
packages: [{
name: 'custom',
location: location.pathname.replace(/\/[^/]+$/, '') + '/custom'
}]
};
</script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/dojo.js"></script>
我正在使用 Google CDN 以获取 DOJO。
这是我在网站中使用的代码。
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/dojo.js"></script>
像这样调用我的代码模块时 'dojo/parser'
define([
'dojo/topic',
'dojo/parser',
'dijit/registry'
], function (topic, parser) {
var instance;
function Test() {
}
Test.prototype = {
init: function () {
}.bind(this));
}
};
return function getInstance() {
return (instance = (instance || new Test()));
};
});
我收到 404 未找到模块 parser
。
它实际上指向 Google CDN 地址:
http://ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/dojo.js/parser.js
- 为什么 CDN 上缺少模块?还是我的代码中遗漏了什么?
- 知道从哪里或如何加载它吗?
注意:如果我手动更改地址为
http://ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/parser.js
我得到了文件,可能是一个错误?
问题不在 URL 内,但可能是由于一些使用 dojoConfig
配置的自定义包。
这是一个有效的示例(无需额外配置):http://plnkr.co/edit/xgEi6qAPqKSNrUaoOQch?p=preview
如果您有自定义模块并且正在使用 CDN,您可能应该遵循 this article 中描述的指南。例如:
<script>
var dojoConfig = {
async: true,
packages: [{
name: 'custom',
location: location.pathname.replace(/\/[^/]+$/, '') + '/custom'
}]
};
</script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.3/dojo/dojo.js"></script>