当前位置: 首页 > news >正文

uniapp下载文件的方案,包括H5,App方案解决办法

1. 在uniapp需要下载文件,但是显示情况是不能下载。所以只能使用该办法来进行下载。

2. 这有一个注意点是:如果你做的是H5的方案,那么我已经替你踩好坑了,UC浏览器是不支持blob类型的下载,以及创建a标签的方案来进行下载。目前发现只有QQ浏览器支持这两种方案。如果你是保密单位,QQ浏览器其实也是可以,因为也是国产化的浏览器。

代码体现:

首先获取后端给你返回的文件下载地址:

mounted() {this.fatIdList = this.config.modelIdthis.$refs.uToast.show({type: 'warning',icon: false,title: '若UC浏览器无法下载模板,请使用QQ浏览器下载!',duration: 3000,})deliverDownloadApi(this.fatIdList, {"currentPage": 1,"pageSize": 20,"sort": "desc","sidx": "","menuId": this.fatIdList,"queryJson": "","superQueryJson": '',"idList": [],"dataType": "1","selectKey": []}).then(data => {this.fileUrl = this.define.baseURL + data.data.urlthis.download()})},

第二步:调取uniapp的原始下载方法uni.downloadFile

// 点击下载download() {setTimeout(() => {// 更多参数,详见文档// https://uniapp.dcloud.net.cn/uni-app-x/api/download-file.html#downloadfileuni.downloadFile({url: this.fileUrl, //下载地址header: this.header, //HTTP请求Headertimeout: 150000, //下载超时时间(毫秒)success: (res) => {// 利用临时地址调起下载this.arouse(res)},fail: (err) => {console.log('下载失败', err)}})}, 3000)},

第三步:

创建a标签的方法来下载:

// 利用临时地址调起下载arouse(res) {let date = new Date()let file_name = '退换货管理(标准化)' + this.dateFormat(date)// eslint-disable-next-line camelcaselet file_type = 'xlsx'// console.log(res)var oA = document.createElement("a")// 设置下载的文件名oA.download = `${file_name}.${file_type}`// Blob临时路径再保存到本地oA.href = res.tempFilePath// 插入DOM并执行点击下载document.body.appendChild(oA)oA.click()oA.remove()},

第四步:直接打开QQ浏览器开始下载 

http://www.lryc.cn/news/476038.html

相关文章:

  • c++ 贪心算法
  • 15分钟学 Go 第 35 天:Go的性能调优 (7000字详细教程)
  • 6、显卡品牌分类介绍:技嘉 - 计算机硬件品牌系列文章
  • Redis数据类型——针对实习面试
  • roberta融合模型创新中文新闻文本标题分类
  • 《密码系统设计》实验二 4-6学时
  • Zypher Network:全栈式 Web3 游戏引擎,服务器抽象叙事的引领者
  • 2025生物发酵展(济南)为生物制造产业注入新活力共谱行业新篇章
  • git入门教程14:Git与其他工具的集成
  • 在Zetero中调用腾讯云API的输入密钥的问题
  • 【AD】1-8 AD24软件工程创建
  • RT-Thread学习
  • 20241102在荣品PRO-RK3566开发板使用荣品预编译的buildroot通过iperf2测试AP6256的WIFI网速
  • 网络模型——二层转发原理
  • 【编程技巧】C++如何使用std::map管理std::function函数指针
  • 导航栏小案例
  • MyBatis一文入门精通,面试题(含答案)
  • Ubuntu18.04服务器非root用户在虚拟环境下的python版本设定
  • CodeS:构建用于文本到 SQL 的开源语言模型
  • HTML 基础概念:什么是 HTML ? HTML 的构成 与 HTML 基本文档结构
  • 18 Docker容器集群网络架构:一、etcd 概述
  • R语言贝叶斯分层、层次(Hierarchical Bayesian)模型房价数据空间分析
  • SpringBoot 在初始化加载无法使用@Value的时候读取配置文件教程
  • 基于MATLAB的身份证号码识别系统
  • 【人工智能-初级】练习题:matplotlib基础练习30例
  • 【002】基于SpringBoot+thymeleaf实现的蓝天幼儿园管理系统
  • nvm详解
  • Lucene的概述与应用场景(1)
  • 11.3笔记
  • 数据结构之线段树