/*
 * @Author: your name
 * @Date: 2022-01-06 14:52:30
 * @LastEditTime: 2022-01-06 17:11:48
 * @LastEditors: Please set LastEditors
 * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 * @FilePath: \background-front-end\src\utils\xlsx.js
 */
import XLSX from 'xlsx'
export function exportExcel(tableData,tableCols) {
//     const data = [{
//         '姓名': 'zhangsan',
//         '年龄': 20,
//         '性别': '男'
//     },{
//       '姓名': 'zhangsan',
//       '年龄': 20,
//       '性别': '男'
//   }];
    let excelName=''
this.$prompt("表格文件名：", "导出表格", {
    showCancelButton: true,
    showInput: true,
    inputType: "text",
    inputValue: excelName,
    confirmButtonText: "确定",
    cancelButtonText: "取消",
    closeOnClickModal: false,
    inputValidator: (val) => (val == "" ? "请填写文件名" : true),
  })
    .then((res) => {
        let data=[]
        tableData.forEach((dataItem)=>{
            let obj={}
            tableCols.forEach(item=>{
                obj[item.label]=dataItem[item.prop]
            })
            data.push(obj)
        })
        
        // 新建空workbook，然后加入worksheet
        const ws = XLSX.utils.json_to_sheet(data)
        // 设置每列的列宽，10代表10个字符，注意中文占2个字符
        // ws['!cols'] = [
        //   { wch: 10 },
        //   { wch: 30 },
        //   { wch: 25 }
        // ]
        // 新建book
        const wb = XLSX.utils.book_new()
        // 生成xlsx文件(book,sheet数据,sheet命名)
        XLSX.utils.book_append_sheet(wb, ws, '数据详情')
        // 写文件(book,xlsx文件名称)
        XLSX.writeFile(wb, res.value+'.xlsx')
    })
    .catch((err) => {
      // console.log("err");
      // console.log(err);
    });

   

    // 导出表格
    // var xlsxParam = { raw: true }; // 导出的内容只做解析，不进行格式转换
    // var wb = XLSX.utils.table_to_book(
    //     dom,
    //   xlsxParam
    // );
    // var wbout = XLSX.write(wb, {
    //   bookType: "xlsx",
    //   bookSST: true,
    //   type: "array",
    // });
    // try {
    //   FileSaver.saveAs(
    //     new Blob([wbout], { type: "application/octet-stream" }),
    //     // 暂时只导出xlsx格式
    //     title + ".xlsx"
    //   );
    // } catch (e) {
    //   if (typeof console !== "undefined") console.log(e, wbout);
    // }
    // return wbout;
}