图片允许多张上传,在使用file.status时总是不生效,直接跳转到成功状态,后来尝试加入了定时器;同时多张上传时采用判断数组的方式

 <van-uploader
accept="*"
v-model="fileList"
multiple
:max-count="4"
:after-read="afterRead"
/>

在下方使用时:

// 图片上传后回调
beforeRead(file) {
if (!file.type.startsWith('image') && !file.type.startsWith('video')) {
Toast.fail('请上传图片或视频')
return false
} else if (file.size > 104857600) {
Toast.fail('选择上传内容不能超过100M')
return false
} else {
return true
}
},
setUpload(file) {
let that = this
setTimeout(() => {
//添加上传状态,避免用户在上传未完成时点击提交按钮
// this.isUploading = true
let config = {
headers: {
//添加请求头
'Content-Type': 'multipart/form-data',
},
}
let deviceFile = []
let params = new FormData()
if (Array.isArray(file)) {
//因为该组件单选是对象,多选是数组
deviceFile = file
console.log(deviceFile, 'deviceFile')
} else {
deviceFile.push(file)
}
deviceFile.map((item) => {
//files是后台参数name字段对应值
params.append('file', item.file)
})
// 文件上传状态
Toast('文件正在上传请等候,请收到上传成功提示后再关闭页面!')
this.isLoading = false
// params.append('file', file.file)
this.$http({
// 这里填写的是api的内容
})
.then((res) => {
if (res.data.code == 0) {
Toast.success('上传成功!')
// 文件成功状态
if (Array.isArray(file)) {
file.forEach((item) => {
item.status = 'done'
item.message = '上传成功'
})
} else {
file.status = 'done'
file.message = '上传成功'
} this.isLoading = true
}
res.data.data.map((item) => {
that.fileid.push(item.fileid)
})
})
.catch()
file.status = ''
file.message = ''
}, 1000)
},
afterRead(file) {
// 文件上传状态
if (Array.isArray(file)) {
file.forEach((item) => {
item.status = 'uploading'
item.message = '上传中...'
this.setUpload(file)
})
} else {
file.status = 'uploading'
file.message = '上传中...'
this.setUpload(file)
}
},

在使用Vant中Uploader过程中遇到的坑:图片状态更改等的更多相关文章

  1. 【转】MFC中调试过程中查看输出信息 -- 不错

    原文网址:http://blog.sina.com.cn/s/blog_4e24d9c501014o39.html 笔记&&方便查阅. ~~~~~~~~~~~~~~~~~~~~~~~~ ...

  2. ARM系统中函数调用过程中的参数传递-转

    在 嵌入式软件编程中,经常会用到函数调用,之前在学习如何在C语言中嵌入汇编时有了解到C语言之前的参数调用是使用寄存器R0传递第一个参数,R1传递到第 二个..一直到R3传递第四个参数.但是实际上有时可 ...

  3. 解决sql server中批处理过程中“'CREATE/ALTER PROCEDURE 必须是查询批次中的第一个语句”

    在批处理中加字段或表或视图或存储过程是否存在的判断 -----------------------------------------line----------------------------- ...

  4. CNN中卷积过程中padding的使用

    1.podding='SAME'时,全0填充.     2.padding=“VALID”,不使用全0填充      

  5. LTE 切换过程中的数据切换

    http://blog.sina.com.cn/s/blog_673b30dd0100j4p4.html LTE中的切换,根据无线承载(Radio Bearer)的QoS要求的不同,可以分为无缝切换( ...

  6. UEditor 使用过程中问题

    UEditor  百度的文本编辑器   具体详细信息请去百度文本编辑器官网,这里不多说了. 我使用的是 UBuilder 版本的NET版本 ,我只是需要图片上传功能,所以就做了最小化的定制.(可以在官 ...

  7. WINDOWS系统下MYSQL安装过程中的注意事项

    1.首先MySQL的安装方式有两种:一种是MSI安装方式,很简单就像安装Windows软件一样.另外一种就是ZIP安装方式.这种相对而言比较麻烦.新手推荐MSI安装方式. 安装方式有以下两种: MSI ...

  8. 【转】SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误

    SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误 最近在VS2013上连接远程数据库时,突然连接不上,在跑MSTest下跑的时候,QTAgent32 crash.换成IIS ...

  9. zabbix 3.0.3 (nginx)安装过程中的问题排错记录

    特殊注明:安装zabbix 2.4.8和2.4.6遇到2个问题,如下:找了很多解决办法,实在无解,只能换版本,尝试换(2.2.2正常 | 3.0.3正常)都正常,最后决定换3.0.3 1.Error ...

随机推荐

  1. Linuxqq shell脚本安装后的卸载

    官方下载和帮助页面: 传送门 linuxqq_2.0.0-b1 的时候,并没有发布 MIPS64 的 DEB 包,只能用 .sh 安装,需要手动删除卸载.愚人节发布的 beta2 新增了 MIPS64 ...

  2. 【刷题-LeetCode】240. Search a 2D Matrix II

    Search a 2D Matrix II Write an efficient algorithm that searches for a value in an m x n matrix. Thi ...

  3. 【刷题-LeetCode】148 Sort List

    Sort List Sort a linked list in O(n log n) time using constant space complexity. Example 1: Input: 4 ...

  4. 一文读懂mysql权限系统

    前言: MySQL权限系统的主要功能是证实连接到一台给定主机的用户,并且赋予该用户在数据库上的SELECT.INSERT.UPDATE和DELETE权限.附加的功能包括有匿名的用户并对于MySQL特定 ...

  5. gin中的query和postform用法

    package main import ( "github.com/gin-gonic/gin" ) func main() { r := gin.Default() // Que ...

  6. 初步学习TypeScript

    使用Visual Studio Code搭建TypeScript开发环境 1.TypeScript是干什么的 ? TypeScript是由微软Anders Hejlsberg(安德斯·海尔斯伯格,也是 ...

  7. python -m详解

    温馨提示: 本篇演示环境是Python 3.8 先python --help看下python -m参数的解释: -m mod : run library module as a script (ter ...

  8. ES6之async与await

    · async - await 是 Promise 和 Generator 的语法糖,目的只是为了让我们书写代码时更加流畅,增强代码的可读性. · async - await 是建立在Promise机 ...

  9. java代码实现调用短信接口,发送短信验证。

    一.代码示例 package com.aaa.zxf.login; import org.apache.commons.httpclient.HttpClient; import org.apache ...

  10. H264 编解码协议

    1.概述 H264是MPEG-4标准所定义的最新编码格式,同时也是技术含量最高.代表最新技术水平的视频编码格式之一,标准写法应该是H.264.H.264视频格式是经过有损压缩的,但是在技术上尽可能做到 ...