我想在我的模块中使用 jQuery UI Accordion,但如果我包含 Oracle MapViewer 库,我总是得到div.accordion is not a function 。这个库还不支持 AMD,所以我在 shim 中定义了它的依赖关系。所有库都按以下顺序加载:jQuery UI、jQuery、(Oracle MapViewer)。我认为应该首先加载 jQuery,但该顺序有效,除非我加载 Oracle MapViewer。
我的 HTML
<!--in head-->
<script src="lib/require.min.js" data-main="app"></script>
<!--in body-->
<div id="accordion">
<h3>Section 1</h3>
<div>Vestibulum a velit eu ante scelerisque vulputate.</div>
<h3>Section 2</h3>
<div>Vivamus non quam. In suscipit faucibus urna.</div>
</div>
我的 app.js
require.config({
paths: {
"jquery": "lib/jquery-1.12.3",
"jquery-ui": "lib/jquery-ui",
"oraclemaps": "lib/oraclemapsv2"
},
shim: {
"oraclemaps": ['jquery']
}
});
require(['oraclemaps', 'jquery-ui'], function ()
{
$("#accordion").accordion();
});
知道如何在 RequireJS 中使用 Oracle MapViewer 库吗?我使用 jQuery 1.12.3 和 jQuery UI 1.11.4(所有组件)。