Vant Uploader 上传多张图片设置status

vant拍摄视频上传以及多张图片上传 阅读详情

Uploader多张上传,使用file.status设置上传状态

1、页面结构

<van-uploader :before-read="beforeRead" :after-read="afterRead" :before-delete="deletImg"
		:max-count="maxSize" v-model="fileList" multiple>
	<van-icon name="plus" />
</van-uploader>

2、前置条件放到beforeRaed方法中 (是否是图片类型、是否超过限定文件大小)

在beforeRead方法中判断文件是否符合条件后,一定要记得返回true或者false状态,不然afterRead方法不会执行。很重要!!!!

beforeRead(file) {
	let This = this
	if (Array.isArray(file)) {
		if (file.length > This.maxSize) {
			This.$toast("超过最大上传张数!")
			return false
		}
		file.forEach(item => {
			if (!item.type.startsWith('image')){
			    this.$toast("请上传图片!")
				return false
			}else if(item.size > 10485760){
                this.$toast("图片超过10M!")
                return false
            }
	    })
 
	} else {
		if (!file.type.startsWith('image')){
			this.$toast("请上传图片!")
			return false
		}
 
        if(file.size > 10485760){
            this.$toast("图片超过10M!")
			return false
        }
	}
 
	return true
},

3、在afterRaed中设置上传状态、上传提示语

afterRead(file) {
	let This = this
	if(Array.isArray(file)){
		file.forEach(item => {
		    item.status = 'uploading'
			item.message = '上传中...'
			This.uploadMaterialImg(item)
		})
	}else {
			file.status = 'uploading'
			file.message = '上传中...'
			this.uploadMaterialImg(file)
	}
}

 

4、调用接口上传成功后,将状态设置为成功

关于compressFile()是图片压缩的方法,在他的另一篇文章中有写到,感兴趣可以看看,传送门附上vue 图片上传压缩(vue+Vant+image-compressor)

async uploadMaterialImg(imgFile) {
	let This = this
	let file = await this.compressFile(imgFile)
	let formData = new FormData()
	formData.append('file', file, file.name)
	uploadMaterial(formData).then(res => {
		if (res.code == 200) {
			imgFile.status = 'done'
			imgFile.message = '上传成功'	
		} else {
			This.$toast("照片上传失败,请重新上传!")
		}
	}).catch(error => {
		imgFile.status = 'failed'
		imgFile.message = '上传失败'
		This.$toast("照片上传失败,请重新上传!")
	})
}

到此,上传多张或一张文件设置上传状态的路程完毕!

Vant Uploader上传文件 + 提交按钮上传(前后端) 安卓版PDA对设备故障进行报修。①在提交表单的时候需要同时提交故障照片,②图片单选。 上传组件使用了 `Vant v2.12.47` 中的 Uploader 组件,但是官方文档只是对单个组件的前端说明。最近才开始用 Vant,不太熟悉,在网上找了些使用方法,感觉零零碎碎的,而且不知道后端代码如何承接参数。在此做一下使用方面的代码总结。 阅读详情

相关推荐

vant van-uploader上传已经成功变修改了status里的内容

vant van-uploader上传已经成功变修改了status里的内容 postImg(file) { file.status = 'uploading'; file.message = '上传中...'; this.files.name = file.file.name; // 获取文件名 this.files.type = file.file.type; // 获取类型 setTimeout(() => {

fei314524的博客 2023

vue3使用van-uploader上传图片显示上传中.

van-uploader组件默认没有提示,选择图片后直接显示在页面上,对于用户来说感知不到图片上传的进度和过程,如果上传失败用户也无法感知。无论上传成功与否都将status设置为空,取消上传提示文字。解决:给files中添加status和message属性。上传图片提示用户图片正在上传中,请稍后。打印上传的文件files查看属性。

hunantai的博客 1110

vue -- vant van-uploader 上传图片功能

效果: 思路: 使用 van-uploader after-read事件,将选中的图片,上传服务器. 上传成功后服务器返回上传图片的地址,拿到返回的地址,进行数据绑定的相关操作 代码: <van-field name="payAvg" label="缴费截图必填" > <template #input> <van-uploader

King Saj 2251

关于vant Uploader 上传的图片和文件回显重新编辑中遇到的问题

1、图片和文件在上传之前是base64和file格式的才能在缩略图中显示相关信息,然而上传之后图片转换成了https的网络地址的形式,即二进制数据格式(不知道说法对不对),总之是个网络地址可以直接在浏览器上显示的,文件可以直接从浏览器上下载下来。文件重新接收的时候也是https的格式不携带其他的文件信息,这个时候需要自己从https地址中剥离文件名字再显示出来下面是我实际运用中的代码this.file是上传的双向绑定的变量【】olddata.file是从后端获取的https的文件地址。......

doudou15203211327的博客 4683

STM32CubeMX 6.4.0 + STM32F407ZGT6 实战:基于YT8512C PHY的lwIP以太网配置与调试

本文详细介绍了使用STM32CubeMX 6.4.0为STM32F407ZGT6微控制器配置YT8512C PHY芯片,并成功移植lwIP以太网协议栈的实战过程。文章从硬件差异分析入手,逐步讲解时钟配置、ETH外设设置、PHY寄存器适配以及lwIP协议栈剪裁等关键步骤,旨在帮助开发者解决非标准PHY芯片的联网难题,最终实现网络连通与Ping测试。

n8m7b6v5c4的博客 593

Halcon和C#联合编程实现硬币识别(个人入门练习)

本人为机器视觉入门小白,自己突发奇想 1.图片数据来源和分析 2.HALCON实现 3.C#搭建界面框架 4.C#中嵌入HALCON代码,即联合编程 5.导出.exe文件,运行以及Debug 目标是这样的,在图片中识别出每种类型的硬币数量,然后计算出总钱数。先上结果,再细说过程。 C#界面和识别结果: 1.图片数据来源和分析 图片大小及格式均统一,拍摄的时候已经尽可能的去除了背景噪点,所以图像处理的要求并不很高(重点在于思路)。硬币区分原理本人代码采用直径范围来判断(也可以半径或区域面积,HALCON算子

Demobird的博客 3615

vant组件库上传图片

vant组件库上传图片

m0_71015996的博客 397

python解析通达信dat与blk数据文件【附源码】

本文介绍了一个完整的通达信金融数据解析器项目,该项目攻克了通达信专有二进制文件格式解析的技术难题。项目采用模块化架构,从基础二进制解析到增强数据分类,最终实现智能语义化列名生成,形成完整的数据处理链路。核心技术包括自适应编码检测、智能数据类型推断和基于业务规则的语义化处理,解决了逆向工程、多编码兼容性等挑战。项目成果显著,解析成功率达100%,数据可读性大幅提升,开发效率提高50%,为量化交易、可视化分析等场景提供了可靠数据支持。该方案不仅具备技术创新性,更具有实际工程应用价值,为金融数据分析领域提供了可复

qq_36224726的博客 2689

vue上传图片

<template> <div class="textarea"> <Field required label="上传图片"> <template #input> <Uploader :after-read="uploadFile" v-model="idFront" :multiple="false" :max-count="1" .

weixin_41815063的博客 180

实测对比:DeepSeek、豆包、千问三大AI模型生成测试用例谁更强?(附完整代码)

本文通过实测对比了DeepSeek、豆包、千问三大AI模型在生成测试用例方面的表现。文章提供了完整的Python代码实现,详细分析了各模型在用例完整性、准确性、边界覆盖及幻觉控制等维度的差异,并分享了工程化集成与多模型融合等优化策略,旨在帮助测试团队选择合适工具以提升工作效率。

ik6789012的博客 944

华为Atlas 300I推理卡驱动安装避坑指南:不同安装方式的选择与优化

本文详细解析华为Atlas 300I推理卡驱动安装的三种主流方式(.run、.rpm和源码编译),提供关键环境检查步骤、安装流程优化建议及常见问题解决方案,帮助开发者高效完成芯片推理卡部署并规避典型安装陷阱。

q9w8e7r6t5的博客 431

【前端】项目中遇到的问题汇总(长期更新)

【长期更新】前端项目中常遇到的问题汇总(vue3+elementPlus+node.js+axios+webpack)

sinat_39394862的博客 1238

ThinkAdmin后台Getshell

通过文件包含或者图片马的方式Getshell。修改其可允许的文件类型,php不允许,可添加。系统管理->系统参数配置->本地服务器存储。

hot_milk1的博客 1864

Unity资源管理架构深度解析:YooAsset核心设计与工程实践

在Unity游戏开发中,资源管理是构建稳定、高效项目的核心技术基础。其核心原理在于通过合理的资源生命周期管理,解决内存泄漏、加载卡顿和包体膨胀等工程难题。现代资源管理方案通过引入资源包(Package)、加载器(Loader)和清单(Manifest)系统,实现了从中心化管理器到职责分离的架构演进,显著提升了并发加载能力和内存控制精度。这一技术价值在于将资源管理从“玄学调试”转化为可控的工程体系,直接支撑起热更新、动态下载和大世界流式加载等复杂应用场景。本文以YooAsset这一主流方案为例,深入剖析其如何

weixin_33898233的博客 470

UFS 3.1协议分析(第五章) -- UFS协议栈

ContentsUFS顶层架构应用层UFS命令集UFS 设备管理器UFS任务管理器传输层互连层 UFS顶层架构     UFS基于SCSI SAM架构模型定义了一个完整的协议栈,从上到下依次为应用层、传输层、数据链路层、物理层。UFS使用MIPI联盟的UniPro作为数据链路层和MIPI的M-PHY作为物理层,两者合起来称之为互连层(UFS InterConnect Layer) 应用层     应用层包括UFS命令集、设备管

Frank_sample的专栏 7369

JSON 与 JSON-RPC 的区别

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,基于文本,采用人类可读的语法来表示结构化数据。它起源于JavaScript,但如今已被几乎所有主流编程语言支持。标准文档:RFC 4627数据类型:支持 String、Number、Boolean、Null、Object、Array 六种基本类型格式示例"name": "张三","age": 30,JSON-RPC(JSON Remote Procedure Call)是一种远程过程调用(RPC)协议。

h a 6 6 6 c k 为 你解决复杂难题! 145

利用vant上传图片功能(可多选)

<div class="upimg"> <span>上传图片</span> <van-uploader v-model="fileList" @delete="deleteimg" :after-read="afterRead" multiple :max-count="9" ...

hy3528的博客 7406

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

vue+vant webApp图片上传和编辑时图片回显

import{ CellGroup, Cell, Uploader }from"vant"; components:{ [CellGroup.name]:CellGroup, [Cell.name]:Cell, [Uploader.name]:Uploader }, <van-cell> ...

dawnStart的博客 3393

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

van-uploader上传图片

uploader 组件默认显示图片的数组,有具体格式[{url:"xxxxx图片地址" }]:max-size="5 * 1024 * 1024" 文件大小限制。:before-read="beforeRead" 上传图片前。:after-read="afterRead" 上传图片后。:before-delete="delImg" 删除图片时。deletable 是否显示删除按钮,默认false。:max-count="1" 最大上传图片张数。uploader列表类型,组件默认显示的图片。

m0_61601708的博客 3525

H5中Vant上传多张图片在beforeRead之后压缩手动上传

这里也是参考了这位大佬给的灵感利用image-conversion 插件直接对图片进行压缩。下面是使用步骤// 保存附件//这里是防止详情里的url再次上传resolve()//这个是模拟的接口resolve()})},

qq_57684473的博客 1080

vant-uploader多附件上传

vant uploader多附件上传

孙少的博客 7023

【antd 的Upload组件onChange方法只执行一次file.status===‘uploading‘,走不到‘done‘的原因和解决方法】

111

鸭绒的博客 3520

vant 组件库中的 图片上传组件(多张图片上传,删除图片传自定义参数)

图片上传前,限制图片格式。图片上传后,上传七牛云接口返回图片url,赋值给图片路径变量。图片删除坑:vant上传组建中内置的删除事件,默认携带两个参数,file和detail,detail中包括name和index字段。想要携带自定义参数,绑定事件时候用箭头函数:before-delete = " (file,detail) => {delImg (自定义参数)}"

m0_58959716的博客 5145

vant+vue+springboot 实现图片单张和多张批量上传

最近做一个H5项目,使用的是vue2+vant2+springboot前后端分离架构。有一些选择多张图片上传的需求,做完在这里分享一下。需要注意的是在beforeRead 函数中,做文件校验时别出错,否则选择多张图片后会没反应。accept=“image/*” 表示只接受图片类型文件。mutiple 默认为true,多选图片需设置为true。:max-count="5" 限制上传的图片数量。beforeDelete 函数表示删除文件前。beforeRead 函数表示读取文件前。

qq_38599266的博客 1747

从此再也不用担心图片上传难题!一起来掌握Vant的Van-Uploader插件和jQuery技巧

我们首先将上传的文件添加到fileList中,然后创建一个新的FormData对象,并将文件添加到其中。接下来,我们使用jQuery的ajax()方法将FormData发送到服务器。在这里,我们需要将contentType和processData设置为false,这样jQuery就不会对数据进行自动处理。

廖圣平 1218
上一篇: vue新建项目连接后台代码记录
下一篇: 移动端vConsole使用方法(附带vue使用方法)
TwoBE9876
博客等级 码龄5年 63粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值