本文摘自PHP中文网,作者小云云,侵删。
本文主要和大家分享HTML5实现拖拽批量上传文件的代码,该组件基于 Vue.js 实现,UI 框架是 elementUI,完整的 demo 地址在https://github.com/Msxiaoma/upload-folder. 拖拽上传文件夹(仅仅chrome支持)。一、组件描述
同时拖拽多个文件夹
删除指定文件夹
显示当前文件夹的上传进度条
超过5M的文件夹分片上传
效果如下:
二、遇到的问题
拖拽读取每个文件夹下面的文件路径
如何显示当前上传的文件夹的进度条
上传文件时跨域携带 cookie
文件夹分片
三、解决过程
1. 拖拽读取每个文件夹下面的文件路径
在进行拖放操作时, DataTransfer 对象用来保存,通过拖放动作,拖动到浏览器的数据。它可以保存一项或多项数据、一种或者多种数据类型
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
|
2. 上传文件夹的进度条
相关阅读 >>
HTML5 meter标签是什么意思?HTML5 meter度量衡如何改变颜色详解
HTML5中浏览器是否能播放指定的音频/视频类型的方法canplaytype()
更多相关阅读请进入《HTML5》频道 >>
Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者