Sencha Grid Exporter 在导出到 CSV 或 xlsx 以外的任何其他类型时失败?
Sencha Grid Exporter fails when exporting to CSV or any other type other than xlsx?
我正在使用 Sencha Grid Exporter 插件,虽然它在导出到 Excel 时工作得很好,但我无法从我的应用程序导出到 CSV 或任何其他类型。
如 KitchenSink 示例中所列,它工作正常。
http://docs.sencha.com/extjs/6.2.1/classic/Ext.grid.plugin.Exporter.html
Ext.getCmp('grid').saveDocumentAs({
type: 'csv', // What other possible values can go here
title: globals.reportName,
fileName: 'myExport.csv'
});
报错如下:
Uncaught Error: [Ext.createByAlias] Unrecognized alias: exporter.CSV
at Ext.Inventory.instantiateByAlias (app.js?_dc=1481916938387:13520)
at Ext.Factory.create (app.js?_dc=1481916938387:23199)
at constructor.getExporter (app.js?_dc=1481916938387:204593)
at constructor.saveDocumentAs (app.js?_dc=1481916938387:204520)
at constructor.saveDocumentAs (app.js?_dc=1481916938387:5355)
at constructor.onMenuitemClick (app.js?_dc=1481916938387:255332)
at constructor.fire (app.js?_dc=1481916938387:19281)
at constructor.doFireEvent (app.js?_dc=1481916938387:20248)
at constructor.doFireEvent (app.js?_dc=1481916938387:65488)
at constructor.prototype.doFireEvent (app.js?_dc=1481916938387:56438)
您缺少 requires
.
如果您告诉 ExtJS 使用 type:'csv'
,它会尝试实例化 exporter.csv
。如果你告诉 ExtJS 使用 type:'excel'
,它会尝试实例化 exporter.excel
。要从文件系统中获取该名称,您必须在某处包含完全限定名称,例如在您的 requires
部分:
requires:[
'Ext.exporter.text.CSV'
]
docs 中的标题有两部分:首先是完整限定 class 名称,即 "Ext.exporter.text.CSV",然后是短名称 ("exporter.csv") .如果您没有在任何地方提供全名,则无法加载文件,除非框架本身已经要求导出器提供全名。根据错误消息,它没有。
背景信息,在您提问之前 "Why doesn't it?":由于该插件可以与数十种导出器中的任何一种一起使用,并且您不希望只为了创建一种导出类型而全部加载,因此您必须手动导入导出器。
我正在使用 Sencha Grid Exporter 插件,虽然它在导出到 Excel 时工作得很好,但我无法从我的应用程序导出到 CSV 或任何其他类型。
如 KitchenSink 示例中所列,它工作正常。
http://docs.sencha.com/extjs/6.2.1/classic/Ext.grid.plugin.Exporter.html
Ext.getCmp('grid').saveDocumentAs({
type: 'csv', // What other possible values can go here
title: globals.reportName,
fileName: 'myExport.csv'
});
报错如下:
Uncaught Error: [Ext.createByAlias] Unrecognized alias: exporter.CSV
at Ext.Inventory.instantiateByAlias (app.js?_dc=1481916938387:13520)
at Ext.Factory.create (app.js?_dc=1481916938387:23199)
at constructor.getExporter (app.js?_dc=1481916938387:204593)
at constructor.saveDocumentAs (app.js?_dc=1481916938387:204520)
at constructor.saveDocumentAs (app.js?_dc=1481916938387:5355)
at constructor.onMenuitemClick (app.js?_dc=1481916938387:255332)
at constructor.fire (app.js?_dc=1481916938387:19281)
at constructor.doFireEvent (app.js?_dc=1481916938387:20248)
at constructor.doFireEvent (app.js?_dc=1481916938387:65488)
at constructor.prototype.doFireEvent (app.js?_dc=1481916938387:56438)
您缺少 requires
.
如果您告诉 ExtJS 使用 type:'csv'
,它会尝试实例化 exporter.csv
。如果你告诉 ExtJS 使用 type:'excel'
,它会尝试实例化 exporter.excel
。要从文件系统中获取该名称,您必须在某处包含完全限定名称,例如在您的 requires
部分:
requires:[
'Ext.exporter.text.CSV'
]
docs 中的标题有两部分:首先是完整限定 class 名称,即 "Ext.exporter.text.CSV",然后是短名称 ("exporter.csv") .如果您没有在任何地方提供全名,则无法加载文件,除非框架本身已经要求导出器提供全名。根据错误消息,它没有。
背景信息,在您提问之前 "Why doesn't it?":由于该插件可以与数十种导出器中的任何一种一起使用,并且您不希望只为了创建一种导出类型而全部加载,因此您必须手动导入导出器。