位置: IT常识 - 正文

el-upload实现上传文件并展示进度条(el-upload上传文件大小限制)

编辑:rootadmin
el-upload实现上传文件并展示进度条

推荐整理分享el-upload实现上传文件并展示进度条(el-upload上传文件大小限制),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:el-upload手动上传文件,el-upload上传文件大小限制,el-upload上传大文件,el-upload上传文件,el-upload上传文件,el-upload上传文件,el-upload上传文件,el-upload上传文件,内容如对您有帮助,希望把文章链接给更多的朋友!

el-upload实现上传文件并展示进度条(el-upload上传文件大小限制)

el-upload在实现文件上传时无法触发on-progress钩子,即使调用后端接口并成功的情况下都无法触发,可以通过如下配置来解决:

const config = { onUploadProgress: progressEvent => { if (progressEvent.lengthComputable) { this.uploadProgress = Math.round((progressEvent.loaded / progressEvent.total) * 100) console.log('progressEvent>>', progressEvent) console.log('uploadProgress>>', _this.uploadProgress) } } }

随后将config添加至调用后端接口,即可成功获取进度~

html:

前端-上传文件获取进度条: <el-upload v-show="!fileList.length" ref="fileUpload" class="upload-demo" style="display: inline-block;height: 32px;margin-left: 8px" action="#" :file-list="fileList" :http-request="uploadVersion" :on-change="handleChange" :on-success="handleSuccess" :on-progress="handleProgress" :on-error="handleError" :auto-upload="true" :show-file-list="false" > <!-- icon_upload.svg--> <el-button type="primary" style="height: 32px;display: flex;align-items: center"><svg-icon icon-class="icon_upload" style="margin-right: 8px" />上传文件</el-button> <!-- <el-input v-model="uploadForm.filename" placeholder="请选择">--> <!-- &lt;!&ndash; <template slot="append"><el-button&ndash;&gt;--> <!-- &lt;!&ndash; size="mini"&ndash;&gt;--> <!-- &lt;!&ndash; >&ndash;&gt;--> <!-- &lt;!&ndash; 上传文件&ndash;&gt;--> <!-- &lt;!&ndash; </el-button></template>&ndash;&gt;--> <!-- </el-input>--> </el-upload> <!-- <el-button size="small" @click="sendClick">上传</el-button>--> <div v-if="fileElProgress"> <div class="el-progress-div"> <div><div v-loading="true" style="display: inline-block;width: 24px; height: 16px; padding-right: 8px;" />{{ fileName }}</div> <span> <span style="display: inline-block;margin-right: 8px">{{ progressPercent }}%</span> <el-button type="text" @click="cancelUpload">取消</el-button> </span> </div> <el-progress :percentage="progressPercent" :text-inside="false" :color="customColors" :stroke-width="2" /> <!-- :stroke-width="16" status="scuccess"--> </div> <template v-if="!fileElProgress"> <div v-for="item in fileList" :key="item.name" class="fail-list"> <div class="list-item"> <span :style="{color:showFailTip?'#FF3D00':'#fff' }"> <svg-icon :icon-class="showFailTip? 'icon_error_file': 'icon_success_file'" /> {{ item.name }} </span> <span style="float: right;display: flex;align-items: center;"> <span style="color: #878D99;display: inline-block;margin-right: 16px">{{ showFailTip ? '失败':'成功' }}</span> <!-- <span>{{ '失败' }}</span>--> <el-button style="color: #00E3FF" type="text" size="small" @click="fileList = []">删除</el-button> <el-button v-show="showFailTip" style="color: #00E3FF" type="text" size="small" @click="sendClick">重新上传</el-button> </span> </div> </div> </template>

JS部分

data() { return { // 进度条 fileList: [], showFailTip: false, customColors: [ { color: 'rgba(223,228,237,0.10)', percentage: 0 }, { color: '#00adc9', percentage: 100 } ], fileElProgress: false, fileProgressText: '', progressPercent: 0, } methodss:{ uploadVersion(params) { const _this = this this.uploadForm.filename = params.file.name this.fileFormData = new FormData() this.fileFormData.append('file', params.file) this.fileFormData.append('md5File', params.file) this.fileName = params.file.name const config = { onUploadProgress: progressEvent => { if (progressEvent.lengthComputable) { _this.uploadProgress = Math.round((progressEvent.loaded / progressEvent.total) * 100) console.log('progressEvent>>', progressEvent) console.log('uploadProgress>>', _this.uploadProgress) this.fileElProgress = true if (this.progressPercent < 99) { this.progressPercent = _this.uploadProgress } else { this.fileProgressText = '正在上传' } } } } uploadFile(this.fileFormData, config).then(res => { if (res.data === 'success') { this.fileProgressText = '上传成功' } else { this.showFailTip = true } this.fileElProgress = false }) }, } },
本文链接地址:https://www.jiuchutong.com/zhishi/285147.html 转载请保留说明!

上一篇:格洛里亚附近的码头和糖面包山,巴西里约热内卢 (© f11photo/Getty Images)(格洛利亚酒店)

下一篇:如何在vue中实现文件预览功能(vue实战技巧)

  • 京东618战后复盘,一场教科书式的营销案例(京东618备战方案)

    京东618战后复盘,一场教科书式的营销案例(京东618备战方案)

  • oppo手机怎么设置小布语音唤醒(oppo手机怎么设置锁屏密码)

    oppo手机怎么设置小布语音唤醒(oppo手机怎么设置锁屏密码)

  • 淘宝里的待付款怎么删除(淘宝里的待付款不想要了怎么办)

    淘宝里的待付款怎么删除(淘宝里的待付款不想要了怎么办)

  • 有耳机孔的手机用typec耳机(有耳机孔的手机能不能用typec耳机)

    有耳机孔的手机用typec耳机(有耳机孔的手机能不能用typec耳机)

  • 蓝牙耳机突然改外放了(蓝牙耳机突然改外放了,重启后还是外放)

    蓝牙耳机突然改外放了(蓝牙耳机突然改外放了,重启后还是外放)

  • 央视频与央视网有什么区别(央视频央视网频道播出)

    央视频与央视网有什么区别(央视频央视网频道播出)

  • 手机内屏坏太久有影响吗(手机内屏坏了长时间不修会怎么样)

    手机内屏坏太久有影响吗(手机内屏坏了长时间不修会怎么样)

  • 怎么匿名发短信(怎么匿名发短信骂人)

    怎么匿名发短信(怎么匿名发短信骂人)

  • 苹果手机屏幕乱动不受控制是哪里的事(苹果手机屏幕乱跳怎么回事)

    苹果手机屏幕乱动不受控制是哪里的事(苹果手机屏幕乱跳怎么回事)

  • 手机响多久会自动挂断(一般手机响多久没人接会自己挂断)

    手机响多久会自动挂断(一般手机响多久没人接会自己挂断)

  • word黄色底纹怎么弄(word黄色底纹怎么去掉)

    word黄色底纹怎么弄(word黄色底纹怎么去掉)

  • b站手机app叫什么名字啊(b站手机版官网)

    b站手机app叫什么名字啊(b站手机版官网)

  • iqoo怎么开启跑马灯(iqooz3跑马灯怎么设置)

    iqoo怎么开启跑马灯(iqooz3跑马灯怎么设置)

  • 抖音私密账号什么人才能看到(抖音私密账号的意思)

    抖音私密账号什么人才能看到(抖音私密账号的意思)

  • webapi是干什么的(webapi有哪些)

    webapi是干什么的(webapi有哪些)

  • 华为p30怎么接电话(华为p30怎么接电脑)

    华为p30怎么接电话(华为p30怎么接电脑)

  • iMessage提示对方尚未开通iMessage解决方法(给对方发短信显示imessage)

    iMessage提示对方尚未开通iMessage解决方法(给对方发短信显示imessage)

  • igfxpers.exe是什么进程? igfxpers是木马吗(igfxsrve.exe)

    igfxpers.exe是什么进程? igfxpers是木马吗(igfxsrve.exe)

  • js数组常用方法(19种)|你会的到底有多少呢?(js数组常用方法有哪几种)

    js数组常用方法(19种)|你会的到底有多少呢?(js数组常用方法有哪几种)

  • 【Spring】一文带你吃透AOP面向切面编程技术(上篇)(spring的文章)

    【Spring】一文带你吃透AOP面向切面编程技术(上篇)(spring的文章)

  • 如何使用 Axios 中的请求拦截器 和响应拦截器(如何使用axios直接发送GET请求)

    如何使用 Axios 中的请求拦截器 和响应拦截器(如何使用axios直接发送GET请求)

  • 出口退税无纸化备案怎么弄
  • 行政事业单位转账至个人账户条例
  • 企业税前扣除凭证包括增值税发票吗
  • 施工单位企业所得税
  • 海运的发票可以抵税吗
  • 营业成本在资产负债表哪里
  • 什么费用可以报销工会经费
  • 二房东转租需要备案吗
  • 工程项目成本控制的方法
  • 交易性金融资产有哪些
  • 公司按最低标准缴纳社保
  • 贴现利息可以抵扣吗
  • 提供应税服务营改增的应税服务不包括什么
  • 往来款 分录
  • 私营企业所得税是多少
  • 统借统还的所得税政策
  • 交通卡定额发票购买
  • 土地出让金返还流程
  • 职工福利费扣除限额
  • 4S店装修改造费帐务处理?
  • 新版edge浏览器如何恢复设置
  • 以土地使用权出资入股未办过户能否抽回
  • 车辆维修的增值税怎么算
  • w10关闭远程
  • linux模块的概念
  • php数组函数实现机选双色球
  • imgrd.exe是什么
  • 城市里创业
  • 怎么检查当年的核酸结果
  • 纳税调整增加额怎么做会计分录
  • php数据库删除数据
  • 三级菜单python
  • 财务费用为负数是好事还是坏事
  • 政府会计制度下财务会计包含几要素
  • yolo行人检测
  • 收到电子退库如何入账
  • 待处理财产损溢在资产负债表中填哪里
  • 帝国cms移动端
  • 取得剧本使用费怎么做账
  • 一次性发放年终奖金怎么扣除个人所得税144000有何意义
  • 预付账款可以抵扣增值税么
  • 发票识别
  • sql server 2016 sp3
  • 为什么开票需要提供开户许可证
  • mysql日志有哪些
  • 税控盘服务费小规模可以抵扣吗
  • 社保里面的住房公积金买房可以便宜多少
  • 如何冲减计提费用
  • 高新企业研发收入占总收入比例怎么算
  • 预付账款发票到哪里查
  • 建筑企业合理避税
  • 房屋租赁费交什么税
  • 分红冲抵往来会计分录
  • 工程施工间接费用明细
  • 其他资本公积核算哪些内容
  • sqlserver日期类型数据
  • mysql 5.7.16 winx64安装配置方法图文教程
  • 微软员工工资
  • ubuntu ftp服务开启
  • agentctl.dll
  • xp输入法图标消失
  • win1020h2版好不好
  • fpt.exe
  • win10关闭defender方法
  • win8无法安装net4.7
  • win8系统多少位
  • jquery的使用
  • jquery插件是干什么的
  • jquery.Callbacks的实现详解
  • jquery-easyui
  • python ping ip地址
  • nodejs ejs
  • 如何利用百度地图定位
  • 如何用jquery
  • unity多开同一个项目的方法
  • 手游炫酷
  • python框架flask系列
  • 什么车属于应征消费税的汽车
  • 地税局热线电话是多少
  • 新郑市税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设