dojo dragula加载但不工作

7uzetpgm  于 2022-12-16  发布在  Dojo
关注(0)|答案(1)|浏览(167)

我正在开发一个使用dragula的户外冲浪页面。由于alfresco 5使用dojo,我使用dojo加载dragula库。

require(["${page.url.context}/res/components/js/dragula.js"], function(){
     dragula([document.getElementById('left-defaults')]);
 });

库加载正常,但dragula没有被正确定义。如果我尝试使用它,我会在浏览器中得到一个未定义的错误,如下所示:

Uncaught ReferenceError: dragula is not defined
at extractar:388
at runFactory (dojo.js:1147)
at execModule (dojo.js:1275)
at dojo.js:1310
at guardCheckComplete (dojo.js:1290)
at checkComplete (dojo.js:1305)
at onLoadCallback (dojo.js:1471)
at HTMLScriptElement.onLoad (dojo.js:1720).

一些我的问题的照片。
dragula library loaded ok
dragula browser error
为什么会发生这种情况?我必须使用另一种方式加载和使用dragula吗?
先谢了

3gtaxfhh

3gtaxfhh1#

您的代码缺少传递给回调函数的形参,即

require(["path/to/dragula.js"], function(dragula /*this is missing*/) {
    // you can use dragula param here
    ...
});

查看dojo.require可以发现,如果要引用在数组中第N个索引处加载的模块(作为第一个参数传递给require()),则需要提供与数组中前N个模块匹配的形参。

相关问题