当前位置: 首页 > 知识库问答 >
问题:

javascript - 请问uniapp里, 纯靠前端生成的blob流, 如何下载?

符允晨
2024-04-02

这个blob流不是调用后端接口返回的, 所以没有url。是纯靠前端生成的一个blob流的word文档。
想问一下该如何下载到手机并打开?H5环境和小程序。
如果创建a标签下载, 跑到小程序里就不生效了。

共有1个答案

萧卜霸
2024-04-02

把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('打开文档成功');        }      });    } }});
 类似资料:
  • 我可以通过这些代码得到一个链接,它可以成功下载一个文件。

  • 像一些大模型的 API,有的提供了流式的 API,允许一个字一个字来吐出数据。前端应该使用这些 API?

  • 这里的APP版本是vue的版本吗?如何升级该版本?

  • 问题内容: 我使用CSS 和属性生成标题和图的编号: 这个(假定合适的浏览器)在任何图像之后都带有漂亮的标签“图1.1”,“图1.2”,依此类推。 问题: 如何从Javascript访问此内容?现在的问题是双重在于我想访问 任一 特定计数器的当前值(在某一DOM节点) 或 所述CSS生成的内容的值(在某一DOM节点) 或 ,很明显,这两个信息。 背景: 我想在链接后面附加指向数字的适当数字,如下所

  • 如果要手写,有没有sql编辑器,能够生成像上面sql一样的带转义符号的语句,而不是自己全部手写

  • 在阅读的API时,我错过了很多函数。首先,它建议使用for循环从stream转到。而且我忽略了一个事实,即不是。 如何在Java8中从生成?