download(url, title) {
console.log(title)
const self = this
self.loading = true
const x = new XMLHttpRequest()
x.open('GET', url, true)
x.responseType = 'blob'
x.onload = function () {
const herf = window.URL.createObjectURL(x.response)
const a = document.createElement('a')
a.href = herf
a.download = title
a.click()
if (navigator.msSaveBlob) {
navigator.msSaveBlob(x.response, title)
}
}
// todo: 添加下载进度
x.onprogress = function(event) {
// 只有 e.lengthComputable 为真,才会有进度条的信息
if (event.lengthComputable) {
var percentComplete = event.loaded / event.total
var progress = parseInt(percentComplete * 100)
self.shipvalue = progress++
}
}
x.onreadystatechange = function() {
if (x.readyState === 4) { // 4 = "loaded"
if (x.status === 200) { // 200 = "OK"
setTimeout(() => {
self.loading = false
}, 800)
} else {
alert('Problem retrieving data:' + x.statusText)
}
}
}
x.send()
},
vue下载文件进度问题
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 要求导出excel文件。当点击下载模板或下载反馈结果,axios发起后端接口请求,返回的数据获取 response...
- 以前的文件下载可以直接通过a标签链接跳转,或者window.open()等都是打开页面方式直接处理。但这次的vue...
- 最近在项目中遇到了多文件下载问题,具体需求是这样的: 我们是做的旅游类的项目,一个景区有多个景点,每一个景点...
- 最近开始经常从 GitHud 上下载许多公开项目资源文件,但是下载速度真的是无语,几KB每秒??只是慢就算了,每次...