Qlik Sense Extension问题:TypeError:$(...)。DataTable不是函数

时间:2017-09-25 09:20:18

标签: javascript jquery requirejs qliksense

我创建了一个需要使用Datatables插件(https://datatables.net/extensions/buttons/#Download)的扩展。但是在尝试初始化插件时,根据帮助:

var table = $('#mytable').DataTable();

我收到一条错误消息,声明" TypeError:$(...)。DataTable不是函数"。

我知道jquery已经加载了,因为我在扩展中使用了很多而没有任何问题。

Qlik Sense Extension javascript文件的最小版本:

define( [
"qlik",
"jquery",
"text!./template.html",
"./datatables.min",
],
function ( qlik, $, template, datatables ) {

    return {
        template: template,
        support: {
            snapshot: true,
            export: true,
            exportData: false
        },
        paint: function () {
            var table = $('#mytable').DataTable();

            return qlik.Promise.resolve();
        },
        controller: ['$scope', function ( $scope ) {
        }]
    };

} );

template.html:

<div qv-extension style="height: 100%; position: relative; overflow: auto;" class="ng-scope">
    <table>
        <tr><td>Cell1</td><td>Cell2</td></tr>     
    </table>
</div>

我的猜测是我需要以另一种方式调用DataTable(),因为datatables.min由匿名函数组成,并且因为Qlik Sense使用require.js来导入外部文件。

通过define([])导入文件时,您不需要添加扩展名.js

0 个答案:

没有答案