将表格数据导出excel
const print = () => {
//从表生成工作簿对象
const wb = XLSX.utils.table_to_book(document.querySelector('#export'));//需要导出的表格的id名
//获取二进制字符串作为输出
const wbout = XLSX.write(wb, {
bookType: 'xlsx',
bookSST: true,
type: 'array'
});
try {
FileSaver.saveAs(
new Blob([wbout], { type: 'application/octet-stream' }),
'medicineManagement.xlsx'//设置导出文件名称
);
} catch (e) {
if (typeof console !== 'undefined') {console.log(e, wbout);}
}
return wbout;
};
表格部分数据批量导出excel
重新写一个table仅用于导出,利用v-show="false"不在界面上显示
仅写需要导出的table-column
在原始表格绑定table的selection-change事件方法。只有当有被选中的表格项的时候,才进行导出。
只能用v-show不能用v-if。
因为在导出的时候document.querySelector(‘#export’),通过id名来找到对应的元素。
v-if是惰性的,只有当满足条件才会渲染元素,设置v-if="false"则元素一直不被渲染。无法通过id名找到
v-show无论条件满足与否,都会渲染,只是通过display:none/block控制隐藏/显示。这样才能通过id名找到元素