错误:来自Dojo和jQuery-UI冲突的multipleDefine

All*_*her 6 dojo jquery-ui slickgrid

我正在尝试创建一个可编辑的SlickGrid(使用jquery-ui)并使用Dojo.

当我的页面包含
<script src="../../bower_components/dojo/dojo.js"></script>
<script src="../../bower_components/SlickGrid/lib/jquery-ui-1.11.3.js"></script>
<script src="../../mlads/fillDemo/FillDemo.js"></script>
控制台显示时

Error: multipleDefine
return mix(new Error(error), {src:"dojoLoader", info:info});  dojo.js (line 106)
src: dojoLoader   dojo.js (line 1896)
info: Object { pid="dijit",  mid="dijit/_WidgetsInTemplateMixin",  pack={...},  more...}
Run Code Online (Sandbox Code Playgroud)

如果我注释掉jquery-ui行,那么错误就会消失.
FillDemo.js是我的源代码,它以

require(
[    "dojo/_base/declare",
     "dijit/_WidgetBase", 
     "dijit/_TemplatedMixin",
     "dijit/_WidgetsInTemplateMixin",
     "dijit/registry",
     "dijit/form/Button", 
     "dijit/form/DropDownButton",
Run Code Online (Sandbox Code Playgroud)

Cor*_*ina 10

看起来这是一个错误,加载jQuery UI的顺序与初始化dojo加载器时的错误.

有关更多上下文,请参阅此处的讨论:https://geonet.esri.com/message/448542#comment-448449

解决方案是确保在jQuery UI和jQuery加载后调用dojo加载器.为此,您可以将dojo的加载移动到HTML页面的底部,并将jQuery和jQueryUI保留在标头中.