
在 uniapp 中,如何下载前端生成的 blob 流
要在 uniapp 中下载前端生成的纯文本 blob 流,需要将其转换为 base64 编码字符串。
代码:
let reader = new filereader();
reader.readasdataurl(blob);
reader.onload = function() {
let base64data = reader.result;
};小程序环境:
立即学习“前端免费学习笔记(深入)”;
在小程序环境中,使用 wx.filesystemmanager.writefilesync 将 base64 编码数据写入临时文件中,然后使用 wx.downloadfile 下载保存的本地临时文件。下载成功后,使用 wx.opendocument 打开文件。
代码:
wx.fileSystemManager.writeFileSync(wx.env.USER_DATA_PATH + '/tempFile.txt', base64data.split(',')[1], 'base64');
wx.downloadFile({
url: wx.env.USER_DATA_PATH + '/tempFile.txt',
success: function(res) {
if (res.statusCode === 200) {
wx.openDocument({
filePath: res.tempFilePath,
success: function(res) {
console.log('打开文档成功');
}
});
}
}
});










