uniapp小程序下载并导出excel

javascript 复制代码
<button @click="confirmExport">导出excel</button>
javascript 复制代码
    confirmExport() {
      let header =  {
          "X-Access-Token": uni.getStorageSync(ACCESS_TOKEN), //自定义请求头信息
        } 
      let url = "http"/......"; // 后端API地址
      uni.request({
          url: url,
          method: "POST",
          // method:"GET",
          header: header,
          responseType: "arraybuffer",
        })
        .then((res) => {
          const now = new Date();
          const fileName = now.toISOString() + ".xlsx";
          const arrayBuffer = res[1].data; // utf-8编码的文件数据
          const base64String = uni.arrayBufferToBase64(arrayBuffer);
          const buffer = uni.base64ToArrayBuffer(base64String);
          let fs = uni.getFileSystemManager();
          const filePath = wx.env.USER_DATA_PATH + "/" + fileName;
          fs.writeFile({
            filePath: filePath,
            data: buffer,
            encoding: "binary",
            success: (res) => {
              console.log("文件保存成功");
              uni.openDocument({
                filePath: filePath,
                fileType: 'xlsx',
                showMenu: true,
                success: (res) => {
                  console.log("文件预览成功");
                  // 构建分享内容
                },
                fail: (error) => {
                  console.error("文件保存失败", error);
                },
              });
            },
          });
        });
    },

缺陷:iOS 报错 officeImportErrorDomain错误912

解决方案:

1.点击右上角的三个点,选择"用其他应用打开",可选择WPS打开,即可浏览

原因:

iOS 不能打开 `.doc` `.xls` `.ppt` 类型的文档

微信小程序的 接口wx.openDocument 支持打开office相关文件, 但是 IOS端不支持旧版 97-2003版的格式,需要打开office文件的统一上传新版pptx, docx, xlsx格式的文件, 不要用ppt, doc, 和xls

相关推荐
云起SAAS20 小时前
B2B 木材行业供需对接平台微信小程序开源
微信小程序·小程序·ai编程·看广告变现轻·b2b 木材行业供需对接平台
毕设源码-邱学长1 天前
【开题答辩全过程】以 基于微信小程序地方小吃分享平台设计与实现为例,包含答辩的问题和答案
微信小程序·小程序
anyup1 天前
弃用 vue-i18n?只用 uView Pro 我照样做国际化!
前端·架构·uni-app
SHolmes18541 天前
Excel 公式解析:按条件去重计数
excel
用户298698530141 天前
告别手动复制:.NET 将网页数据一键导出为 Excel
后端·html·excel
竹林8181 天前
从零到精通:用 Python openpyxl 批量处理 Excel,彻底告别重复劳动
python·excel
嫂子开门我是_我哥1 天前
从零开发微信小程序+若依后端项目:本地全流程开发,从环境搭建到前后端联调跑通
微信小程序·小程序·若依
Kingexpand_com2 天前
物联网APP开发实战:如何打造用户真正愿意用的智能硬件伴侣
物联网·小程序·app·智能硬件·物联网app定制开发
diygwcom2 天前
vue3+handsontable实现在线可编辑excel
excel
CHU7290352 天前
家政同城服务APP前端功能玩法解析
前端·小程序