未捕获的TypeError:this.movi​​e.setSheetName不是函数 - Angularjs Datatable

时间:2016-05-11 07:43:22

标签: jquery angularjs datatables angular-datatables

有人可以告诉我为什么会收到此错误。

  

未捕获的TypeError:this.movi​​e.setSheetName不是函数

使用此处提到的Angularjs Datatable中的按钮

https://l-lin.github.io/angular-datatables/#/withButtons

这是代码

$rootScope.dtOptions = DTOptionsBuilder.newOptions()
    .withPaginationType('full_numbers')
    .withDisplayLength(10)
    .withDOM('frtip')
    .withBootstrap()
    .withBootstrapOptions({
        TableTools: {
            classes: {
            container: 'btn-group',
                buttons: {
                    normal: 'btn btn-danger'
                }
            }
        },
        ColVis: {
            classes: {
                masterButton: 'btn btn-primary'
            }
        },
        pagination: {
            classes: {
                ul: 'pagination pagination-sm'
            }
        }
    })
    .withOption('bLengthChange', false).withButtons([
        'copy',
        'print',
        'excel'
    ]);

1 个答案:

答案 0 :(得分:1)

您需要安装jszip。将此行添加到bower.json dependencies部分(如果您使用的是凉亭)

"dependencies": {
   ...
   "jszip": "2.6.0" 
}

并运行bower update。或者使用npm

npm install jszip@2.6.0

重要的是,您要具体使用2.6.0(或更低)。 dataTables与最新的3.0.0不兼容。

更新;设置文件名:

.withButtons([ 
    { 
      extend : 'excel'
      filename: 'download', 
    },
    ...
])

这将生成名为download.xlsx

的文件