因为数据跟新但是没渲染到DOM上,所以要将表格导出代码块放进this.$nextTick(),表示在下次dom更新之后,再执行导出表格的代码块
this.$nextTick((v) => {
var el = document.getElementById('outTable')
var wb = XLSX.utils.table_to_book(el)
/* get binary string as output */
var wbout = XLSX.write(wb, { bookType: 'xlsx', bookSST: true, type: 'array' })
try {
FileSaver.saveAs(new Blob([wbout], { type: 'application/octet-stream' }), 'sheetjs.xlsx')
} catch (e) { if (typeof console !== 'undefined') console.log(e, wbout) }
this.loading = false
return wbout
})