vant自动上传文件/图片

vant上传图片与elementUI有所不同,没有自动上传功能,所以与后端进行接口对接的时候可以在after-read中将文件进行上传

html页面

<!-- 上传图片 -->
<van-field name="uploadImg" label="图片">
<template #input>
<van-uploader
:max-count="5"
multiple
v-model="uploadImg"
:max-size="50 * 1024 * 1024"
@oversize="onOversize"
:before-read="beforeRead"
:after-read="afterRead"
@delete="deleteFile"
accept="image/jpeg,image/jpg,image/png"
upload-icon="photo"
>
</van-uploader>
</template>
</van-field>

max-count:最大上传个数

multiple:是否支持多选

:max-size:文件大小限制

@oversize:文件超出大小后的方法

:before-read:文件读取之前(可以做文件类型等校验)也可以进行文件大小判断

:after-read:文件读取之后(此时可以进行文件上传)

@delete:文件删除时的方法

accept:文件类型

upload-icon:显示的图标

文件超出大小时的方法

onOversize() {
this.$toast('图片大小不能超过 50Mb')
},

文件读取之前

beforeRead(file) {
if (file.type !== 'image/jpeg' && file.type !== 'image/jpg' && file.type !== 'image/png') {
this.$notify({ type: 'danger', message: '请上传 jpg、jpeg、png 格式图片' })
return false
}
return true
},

文件读取之后

一般来说,前端在进行Post请求的时候会根据场景发送不同类型的数据,该Post请求头的Content-Type字段必须声明相应的数据类型,比如说application/x-www-form-urlencoded、application/json、multipart/form-data等,根据实际应用,有时候会需要请求时来手动设置,不过大部分情况下浏览器会根据Body中的数据来自发的设置相应的请求头。

afterRead(file, detail) {
// 此时可以自行将文件上传至服务器
console.log(file, detail) //发送请求
let params = new FormData()
params.append('file', file.file)
params.append('size', file.file.size) api.submit(params)
.then((res) => {
this.$message.success('上传图片成功')
})
.catch((err) => {
console.error(err)
})
},

文件删除后

deleteFile(file, detail) {
console.log(file,detail)
},

vant自动上传图片/文件的更多相关文章

  1. 利用Spring MVC 上传图片文件

    本文转自:http://amcucn.iteye.com/blog/264457.感谢作者 近日在工作当中,需要用到上传图片的功能,然而自己平时学习的时候只会使用struts的上传功能,但因为项目并没 ...

  2. Typora-yes:typora最舒适的使用-优化主题+图床服务+自动上传图片插件

    转载注明出处:https://www.cnblogs.com/nreg/p/11992678.html,谢谢 开源项目下载:https://github.com/nreg/typora-yes 云盘: ...

  3. MacOS Typora集成SM.SM图床 实现自动上传图片

    MacOS Typora集成SM.SM图床 实现自动上传图片 此为PicGo-Core (Command line) (OpenSource)配置方法 参照官网 https://support.typ ...

  4. php上传图片文件常用的几个方法

    1. 前台 <form class="add-form" method="post" action="/person/save" en ...

  5. 基于log4net的支持动态文件名、按日期和大小自动分割文件的日志组件

    最近处理一个日志功能,用log4net的配置不能完全满足要求,所以在其基础上简单封装了一下,支持以下功能: 1 零配置 内置默认配置,引用dll后不需要添加或修改任何配置文件也可以使用 2 动态指定文 ...

  6. paip.enhes efis 自动获取文件的中文编码

    paip.enhes efis 自动获取文件的中文编码 ##为什么需要自动获取文件的中文编码 提高开发效率,自动获取文件的中文编码  .不需要手动设置编码...轻松的.. ##cpdetector 可 ...

  7. [Ajax] 使用Ajax异步上传图片文件(非Form表单提交)

    通过表单Form提交来上传文件的方式这里就不说了: 下面介绍,通过js中使用ajax异步上传图片文件: 新建一个html页面和一个一般处理程序即可: 涉及思路: //发送2次Ajax请求完成js异步上 ...

  8. Android PRODUCT_COPY_FILES 自动拷贝文件

    /********************************************************************** * Android PRODUCT_COPY_FILES ...

  9. Windows服务器Pyton辅助运维--01.自动Copy文件(文件夹)到远程服务器所在目录

    Windows服务器Pyton辅助运维 01.自动Copy文件(文件夹)到远程服务器所在目录 开发环境: u  Web服务器: Windows Server 2008 R2 SP1 IIS 7.5 u ...

随机推荐

  1. python常用标准库(math数学模块和random随机模块)

    常用的标准库 数学模块 import math ceil -- 上取整 对一个数向上取整(进一法),取相邻最近的两个整数的最大值. import math res = math.ceil(4.1) p ...

  2. 基于Python的渗透测试信息收集系统的设计和实现

    信息收集系统的设计和实现 渗透测试是保卫网络安全的一种有效且必要的技术手段,而渗透测试的本质就是信息收集,信息搜集整理可为后续的情报跟进提供强大的保证,目标资产信息搜集的广度,决定渗透过程的复杂程度, ...

  3. CF1682E Unordered Swaps

    鸽着,我不知道为什么对? 题意: 思路: code: #include<bits/stdc++.h> using namespace std; const int N=5e5+5; int ...

  4. 第一次的ssm整合

    数据库表 导入依赖 <dependencies> <dependency> <groupId>javax.servlet</groupId> <a ...

  5. 钉钉登录二维码嵌套在vue页面中

    转自 https://www.csdn.net/tags/OtDacg3sMjQ2NTgtYmxvZwO0O0OO0O0O.html 钉钉登录二维码嵌套在vue页面中 2021-09-04 14:42 ...

  6. Linux静默安装Oracle21C

    Linux静默安装Oracle21C 1.修改主机名及配置hosts [root@localhost ~]# hostname # 查看主机名 [root@localhost ~]# hostname ...

  7. 2 万字 + 30 张图 | 细聊 MySQL undo log、redo log、binlog 有什么用?

    作者:小林coding 计算机八股文网站:https://xiaolincoding.com/ 大家好,我是小林. 从这篇「执行一条 SQL 查询语句,期间发生了什么?」中,我们知道了一条查询语句经历 ...

  8. kali渗透测试阅读目录

    一.渗透测试介绍 渗透测试介绍及渗透环境配置 二.信息收集 kali 信息收集 三.漏洞扫描 kali 漏洞扫描 四.漏洞利用 kali msf漏洞利用

  9. mariadb安装配置(主从配置)

    主服务器192.168.206.183 从服务器192.168.206.193 1.创建并编辑 /etc/yum.repos.d/MariaDB.repo文件(主从都要做) [mariadb] nam ...

  10. Spring和SpringMVC整合及关系

    SpringMVC扼要的讲,就是控制请求和处理.有必要将Spring和SpringMVC整合,否则仅配置SpringMVC并完成Spring的功能,会造成业务逻辑混乱. 简要总结:①原理:采用监听器, ...