当前位置:网站首页>制作文件上传进度条
制作文件上传进度条
2022-07-29 17:53:00 【weixin_46787337】
先看原生js怎么做
关键点: 监听请求的upload.onprogress事件
// 发请求
const ajax = (url: string, data: FormData) => {
return new Promise((resolve, reject) => {
const request = new XMLHttpRequest();
request.open('POST', url);
request.onreadystatechange = () => {
if (document.readyState === 'complete' && request.status === 200) {
resolve(request.response);
} else {
reject(new Error('上传失败'));
}
};
request.upload.onprogress = (e: ProgressEvent) => {
//这里可以获取进度条的信息
console.log(`${
e.loaded/ e.total*100 ||0}%`)
};
request.send(data);
});
};
axios做进度条
要点是发送请求是配置onUploadProgress:
async uploadVideo () {
const {
uploadFile} = this
if(uploadFile){
let param = new FormData() //创建form对象,私有,无法直接获取,只能通过get来查看其中的元素
param.append('file',uploadFile)
let config = {
headers:{
'Content-Type':'multipart/form-data',
},
transformRequest: [function (data) {
return data
}],
onUploadProgress: progressEvent => {
let persent = (progressEvent.loaded / progressEvent.total * 100 | 0) //上传进度百分比
console.log(persent)
},
}
axios.post('http://xxxxxxxx/video/upload',param,config) //地址写你们自己的接口
.then(response=>{
var result = response.data
if(result.status == 0){
console.log(result)
}else{
this.$message({
message: '上传失败',
type: 'error',
duration:'1000'
});
}
}).catch(err => {
console.log(err)
})
}
},
边栏推荐
- Mathematical Analysis_Proof_Two Important Limits (Tongji Version)
- redis学习三redis里的list、set、hash、sorted_set、skiplist
- 机器学习:知道模型评估中的SSE、“肘”部法、SC系数和CH系数的实现原理
- The service failure agent how to get things
- 【Mysql系列】02_连接+表
- A redis tool class to solve cache breakdown, cache penetration
- 开放原子开源基金会秘书长孙文龙:要打造以开发者为本的开源服务平台
- GRE MGRE
- 美国再度打压中国超算!申威、飞腾等7家实体被制裁
- go协程栈底层讲解
猜你喜欢
随机推荐
闻泰科技携手格力集团收购欧菲光旗下广州得尔塔等资产
go的堆内存结构分析
How different DAOs are changing the world
UG安装出现Server Start Failed. The Server May Already Be Running!!解决方法
云商店专访 | 云速ERP,小场景里帮企业做“大生意”
【Mysql系列】01_查询+排序
go协程栈底层讲解
【回忆】奶奶的歌谣
【Harmony OS】【ARK UI】ets使用第三方类库crypto实现加密解密
AMD收购赛灵思已获两家公司股东同意
【英语考研词汇训练营】Day 17 —— espresso,ultimate,gradually,detect,dimension
P5514 [MtOI2019]永夜的报应(位运算)
GRE MGRE
不同的 DAO 对世界带来的改变
[转帖]为什么收入越来越少?
解决报错Unsupported field: HourOfDay
One's deceased father grind English vocabulary training camp Day 】 16 - bankrupt, remain, regulate, the construct and reflect
本周投融报:CeFi积聚风投吸引力
U盘拔出时总是提示有程序正在使用?
西人马重磅发布自研电荷信号调理芯片CU0102B









