这是我的第一个道场构建,所以请原谅我对这件事的无知。
我刚刚使用以下(非常简化的)配置文件从 dojo 构建系统创建了我的自定义构建:
dependencies = {
stripConsole: "normal",
layers: [
{
name: "../dijits/cx/dijitsCXbuild.js",
copyrightFile: "CopyrightCX.txt",
dependencies: [
"dojo.parser",
"dijit.dijit",
"dijit._Widget",
"dijit._Templated",
"dijit._Container",
"dojo.i18n",
"dojo.NodeList-fx",
"dojox.grid.cells",
"dojox.grid.DataGrid",
"dojox.layout.GridContainer",
"dijit.TitlePane",
"dijits.cx.TaskPanel",
"dijits.cx.Identify"
]
}
],
prefixes: [
[ "dijit", "../dijit" ],
[ "dojox", "../dojox" ],
[ "dijits.cx", "../dijits/cx" ]
]
}
...好吧,一切都很好,我得到了我自己的包裹,里面有我所要求的一切。然后在我的网络应用程序中,我包含以下内容
<script type="text/javascript">
djConfig = {
isDebug:false,
parseOnLoad:true,
locale:getLocale()
};
</script>
<script type="text/javascript" src="Lib/cxdojo/dojo/dojo.js"></script>
<script type="text/javascript" src="Lib/cxdojo/dijits/cx/dijitsCXbuild.js"></script>
...看起来不错,直到代码需要实例化第一个 dijit 并且它因臭名昭著而失败:“dijits.cx。TaskPanel 不是构造函数。”
我可以通过包含“dojo.require()”来摆脱这个问题,但我会通过创建我自己的自定义构建来摆脱这个问题。关于我做错了什么或我应该做什么以避免'dojo.require()'行的任何想法......谢谢堆。