图一是页面上的效果 第一列设置了可勾选的复选框。图二是导出sheet后的xlsx文件,但是原本的复选框没有显示,变成了空列。现在有两个问题。问题一:下载的文件能否支持复选框的展示?问题二:如果不能支持复选框的展示,想在导出的文件第一列直接展示序号列,怎样才能实现?
- exportAction() {
- const excelIo = new IO()
- const fileName = '下载文件' + '.xlsx'
- // 获取工作簿中的所有工作表数量
- const sheetCount = this.spread.getSheetCount()
- // 在导出前将表格解冻并删除所有 sheet 的第一列
- for (let i = 0; i < sheetCount; i++) {
- const sheet = this.spread.getSheet(i)
- sheet.options.isProtected = false // 解冻表格
- sheet.deleteColumns(0, 1)//删除第一列
- }
- let json = this.spread.toJSON({
- includeBindingSource: true,
- })
- if (!json.sheets) {
- this.$message({
- type: 'warning',
- message: '无方案数据,无法导出',
- })
- return
- }
- excelIo.save(
- json,
- (blob) => {
- saveAs(blob, fileName)
- },
- function (e) {}
- )
- },
复制代码 用以上代码实现导出功能,但是用此方法又会产生新问题。导出的xlsx文件确实实现了第一列为序号列,但是原本sheet页面上的复选框会被删除。有什么办法能技能实现导出的文件第一例是序号开始,但又不影响原本页面上的sheet复选框的展示 |