在我们的Dojo系统中,我们在dojoConfig中指定了以下内容:
packages: [{
name: "myWidgets",
location: "/js/libs/widgets"
}]
因此,在我们的require语句中,我们所要做的就是:
require(["myWidgets/myCalendarWidget"....
问题是当我运行构建时,这个dojoConfig不可用,并且由于“myWidgets”未根据构建配置文件定义,因此我发现了许多缺少的依赖项错误。
现在,我已经尝试将一个软件包块添加到构建配置文件中,但最终结果是创建了一个我不想要的实际“myWidgets”软件包。
那么,有没有办法让构建看到'myWidgets'别名的定义,但是构建输出的最终结果仍然是镜像常规文件结构(即/ js / libs / widgets)?我试图在构建配置文件的defaultConfig元素中定义这些路径别名,但这也不起作用。
答案 0 :(得分:1)
如果您使用的是个人资料,则可以在个人资料中指定包
/util/buildscripts:./build.sh profile=../../../myProfile.js
http://dojotoolkit.org/reference-guide/1.8/build/buildSystem.html#profile-basics
您还可以指定包含dojoConfig
的javascript文件/util/buildscripts:./build.sh --dojoConfig ../build/examples/dojoConfig.js
http://dojotoolkit.org/reference-guide/1.8/build/buildSystem.html#using-a-package-configuration
回答你的评论。该路径与dojo.js所在的路径相对。
var dojoConfig = {
parseOnLoad: true,
isDebug: true,
locale: 'en-us',
paths: {
"evf": "../../evf"
}
};
我的目录结构类似于
js/dojo-1.8.0
dijit
dojo <-- contains dojo.js
dojox
util
js/evf
myCustomWidget.js