antd组件Upload实现自己上传
前言
在实现图片上传时,可能需要用到Upload,但是它默认的上传方式是加入图片后直接上传,如果要实现最后再一次性上传,需要自定义内容。


//添加按钮的样式
const uploadButton = (
<div>
<Icon type="plus" />
<div className="ant-upload-text">Upload</div>
</div>
);
<Upload
//样式
className={styles['override-ant-btn']}
//陈列样式,现在是卡片式
listType="picture-card"
//再图片上传到页面后执行的函数,自定义让他不执行
beforeUpload={() => false}
//数据,即图片,是一个数组
fileList={fileList}
//当点击查看时调用(上图的那个眼睛)
onPreview={this.handlePreview}
//数据改变时调用
onChange={this.handleChange}
>
//当不少于一张图时,不显示怎加图片的按钮。
{fileList.length >= 1 ? null : uploadButton}
</Upload>
还有一个移除时调用的函数onRemove(),即点击上图的垃圾桶,这里没有定义。
handlePreview = (file) => {
this.setState({
previewImage: file.url || file.thumbUrl,
visible: true,
});
};
<Modal visible={visible} footer={null} onCancel={this.handleCancel}>
<img alt="加载" style={{ width: '100%',height: '100%' }} src={previewImage} />
</Modal>
利用Modal显示图片。
handleChange = ({ fileList }) => {
this.setState({ fileList });
};
数据改变时直接重设fileList数组的值(我这里只有一张图可以这么做)。
最后是fileList的一些基本设置:
fileList: [{
uid: 'id',
name: '标题',
//目前的状态
status: 'done',
//图片的url或者base64
url: '',
type: 'image/jpeg',
}],
来源:https://segmentfault.com/a/1190000017404796
antd组件Upload实现自己上传的更多相关文章
- common-fileupload组件实现java文件上传和下载
简介:文件上传和下载是java web中常见的操作,文件上传主要是将文件通过IO流传放到服务器的某一个特定的文件夹下,而文件下载则是与文件上传相反,将文件从服务器的特定的文件夹下的文件通过IO流下载到 ...
- 使用 fileupload 组件完成文件的上传应用
1. 使用 fileupload 组件完成文件的上传应用 commons-dbutils-1.3.jarcommons-fileupload-1.2.1.jar 1). 需求: > 在 uplo ...
- jQuery文件上传插件jQuery Upload File 有上传进度条
jQuery文件上传插件jQuery Upload File 有上传进度条 jQuery文件上传插件jQuery Upload File,插件使用简单,支持单文件和多文件上传,支持文件拖拽上传,有进度 ...
- Upload无刷新上传控件
Upload无刷新上传控件 最近在做一个web开发项目 ,用到upload上传控件 ,由于c#提供的控件局限性太大 ,所以就自己从国外大牛 手里借鉴一下. 该控件可以判断上传的文件是否已存在 ,减少了 ...
- PHP系列 | Thinkphp3.2 上传七牛 bad token 问题 [ layui.upload 图片/文件上传]
前端代码 <div class="logo_out" id="upload-logo"></div> JS代码 /** * 上传图片 * ...
- iview Upload组件多个文件上传
使用 iview Upload 上传组件 手动上传 包括单个文件和多个文件 思路:创建一个数组 把需要上传的文件 push到这个数组里面 1.引用组件 2.手动上传,根据官方文档 设置:before ...
- Flash上传组件之SWFUpload文件上传
一.什么是SWFUpload? SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而 ...
- 使用antd-mobile的ImagePicker组件实现图片的上传
这篇文章主要是记录一下在开发钉钉微应用时,实现图片上传及显示功能的过程. 这个项目用的dingyou-dingtalk-mobile这个脚手架,可直接在NowaGui上创建.这是一个关于钉钉微应用的脚 ...
- antd实战:表单上传,文件列表的过滤与限制。
用表单上传组件最痛苦的地方是: 他的诸多行为与纯上传组件不一样,而表单的文档关于这一块基本上没有提,只能自己试. 比如我想做一个上传前的拦截. beforeUpload: (file, fileLis ...
随机推荐
- python-套接字编程之udp
使用udp协议 服务端: #!/usr/bin/python3 # coding:utf-8 # Auther:AlphaPanda # Description:UDP服务端 # Version:1 ...
- BZOJ 4897: [Thu Summer Camp2016]成绩单 动态规划
Description 期末考试结束了,班主任L老师要将成绩单分发到每位同学手中.L老师共有n份成绩单,按照编号从1到n的顺序叠 放在桌子上,其中编号为i的成绩单分数为w_i.成绩单是按照批次发放的. ...
- 浅谈 Catalan number——卡特兰数
一.定义: 卡特兰数是一组满足下面递推关系的数列: 二.变形: 首先,设h(n)为Catalan数的第n+1项,令h(0)=1,h(1)=1,Catalan数满足递推式: h(n)= h(0)*h(n ...
- [BZOJ4456][ZJOI2016]旅行者:分治+最短路
分析 类似于点分治的思想,只统计经过分割线的最短路,然后把地图一分为二. 代码 #include <bits/stdc++.h> #define rin(i,a,b) for(regist ...
- Spring Data JPA(一)简介
Spring Data JPA介绍 可以理解为JPA规范的再次封装抽象,底层还是使用了Hibernate的JPA技术实现,引用JPQL(Java Persistence Query Language) ...
- 任泽平:95页PPT分析2018(经济、房价、政策)
任泽平:95页PPT分析2018(经济.房价.政策) 2017-12-07 06:38房价
- linux下挂载磁盘
1.使用fdisk 查看硬盘信息 [root@localhost ~]# fdisk -l Disk /dev/sdb: 107.4 GB, 107374182400 bytes 255 heads, ...
- hibernate缓存机制与N+1问题
在项目中遇到的趣事 本文基于hibernate缓存机制与N+1问题展开思考, 先介绍何为N+1问题 再hibernate中用list()获得对象: /** * 此时会发出一条sql,将30个学生全部查 ...
- 1、maven的下载,安装,配置
下载 1.maven官方下载地址: http://maven.apache.org/download.cgi 进入官网: 下载各历史版本官方地址: https://archive.apache.org ...
- maven 安装jar包命令
以 spring-context-support-3.1.0.RELEASE.jar 为例,在 @3图中已经给出这个 jar 包的 groupId,artifactId,version信息,手动安装的 ...