过程还是比较简单的,结合官网给的几个方法就可以导出了
上代码:
// 点击下载
downLoad(){
wx.showLoading({ title: "加载中" });
let filePath = `${wx.env.USER_DATA_PATH}/${+new Date}.xlsx`;//导出的文件名
uni.request({
url:url,
data:prams,
method:'GET',
responseType:'ArrayBuffer',
success:(data) => {
let fm = wx.getFileSystemManager();//获取文件管理器
fm.writeFile({//写入文件
filePath,//文件名
data,//数据
success: res =>{
wx.hideLoading();
wx.showModal({
title: "下载成功",
content: "是否打开?",
confirmColor: "#0bc183",
confirmText: "打开",
success(res) {
if (res.confirm) {
wx.openDocument({//打开文件
filePath,//文件名
showMenu: true,//右上角是否显示(...)
success(res) {
console.log(res);
},
});
} else if (res.cancel) {}
},
});
},
fail: err => {
wx.hideLoading();
wx.showModal({
title: '提示',
content: "文件下载失败",
showCancel: false, //是否显示取消按钮
success: function (result) {}
})
},
})
});
},
接口返回的数据是二进制格式的:
注解:
responseType:‘ArrayBuffer’ 获取二进制的返回数据
wx.getFileSystemManager() 获取文件管理器方法
.writeFile() 往文件管理器里面写入文件
wx.openDocument() 打开文件
其他没什么了,都可以看得懂.
📢没了,结束了,是不是很简单呐,如有错误,欢迎留言.如有问题,不吝赐教。
📢如果此篇博文对您有帮助,还请动动小手点赞 👍 收藏 ⭐留言 📝呐~,谢谢 ~ ~