我试图创建一个定制的Dojo构建,使用Dojo SDK 1.10道场1.10自定义生成
我有以下目录结构 -
app
build.profile.js
dojo
dijit
dojox
util
myapp
A.js
B.js
package.json
myapp.profile.js
A.js和B.js都是纯AMD模块。 B是对A的依赖。
这里是我的myapp.profile.js -
var profile = (function(){
return {
resourceTags: {
amd : function(filename, mid) {
if(filename.indexOf('profile.js') != -1 && /\.js$/.test(filename))
return true;
else return false;
}
}
};
})();
,这里是我的myapp的package.json -
{
"name": "custom",
"description": "My Application.",
"version": "1.0",
"keywords": ["JavaScript", "Dojo", "Toolkit", "DojoX"],
"dojoBuild": "myapp.profile.js"
}
这里是我的应用A广build.profile.js -
var profile = (function(){
return {
basePath: ".",
releaseDir: "./build",
releaseName: "javascript",
action: "release",
stripConsole: "warn",
selectorEngine: "lite",
packages:[{
name: "dojo",
location: "dojo"
},{
name: "dijit",
location: "dijit"
},{
name: "dojox",
location: "dojox"
},{
name: "custom",
location: "myapp"
}],
layers: {
"dojo/dojo": {
include: [ "dojo/dojo", "dojo/i18n", "dojo/domReady"],
customBase: true,
boot: true
},
"custom/custom": {
include: ["myapp/A"]
}
}
};
})();
所有配置都还好,不过当我建立我得到以下错误: -
error(311) Missing dependency. module: myapp/A; dependency: myapp/B
这里是我的A.js: -
define([
"dojox/mobile/Badge",
"dijit/_Widget",
"myapp/B",
], function(declare, Button, Bb){
return declare("A", Button, {
});
});
这里是我的B.js: -
define([
"dojox/mobile/Badge",
"dijit/_Widget"
], function(declare, Button){
return declare("B", Button, {
});
});
是没有办法,我在我的个人资料的对象我失去了一些东西?我在这里被阻止,无法构建我的项目。
尝试改变' “的myapp/B”'在A.js到' “./B ”'或'“ 定制/ B”' – barbsan
哇,这为我工作,谢谢哥们。 –
这两个版本都可以工作,或只有第一个版本? – barbsan