微信小程序导出xls数据

 

 

 

// 创建工作簿
const workbook = XLSX.utils.book_new();
 
// 创建工作表数据
let worksheet_data = [
  ["用户ID", "用户昵称", "红包","所属邀请人","直播1a观看时长","红包1a","直播1c观看时长","红包1c"],
];

//... 其他数据

 
// 将数据转换为工作表
const worksheet = XLSX.utils.aoa_to_sheet(worksheet_data);
// 将工作表添加到工作簿
XLSX.utils.book_append_sheet(workbook, worksheet, "Sheet1"); 
// 生成 Excel 文件的二进制字符串
const fileData  = XLSX.write(workbook, { bookType: 'xlsx', type: 'base64' });
// 小程序文件系统API写文件
const fs = wx.getFileSystemManager();
const file_name =  "文件名-"+util.formatTimeByName(new Date())+".xlsx";
const filePath = `${wx.env.USER_DATA_PATH}/${file_name}`;

fs.writeFile({
  filePath: filePath,
  data: fileData,
  encoding: 'base64',
  bookSST: true,
  success(res) {
    console.log(res)
    const sysInfo = wx.getSystemInfoSync()
    // 导出
    if (sysInfo.platform.toLowerCase().indexOf('windows') >= 0) {
      // 电脑PC端导出
      wx.saveFileToDisk({
        filePath: filePath,
        success(res) {
          console.log(res)
        },
        fail(res) {
          console.error(res)
          util.tips("导出失败")
        }
      })
    } else {
      // 手机端导出
      // 打开文档
      wx.openDocument({
        filePath: filePath,
        showMenu: true,
        success: function (res) {
          console.log('打开文档成功')
        },
        fail: console.error
      })
    }

  },
  fail(res) {

    console.error(res)
    if (res.errMsg.indexOf('locked')) {
      wx.showModal({
        title: '提示',
        content: '文档已打开,请先关闭',
      })
    }

  }
})

 

https://blog.csdn.net/qq_45173293/article/details/134647770

 

posted @ 2024-07-31 10:23  与f  阅读(51)  评论(0编辑  收藏  举报