最近的Task涉及文件的上传和下载,查了查NGZERRO,发现相关组件是基于Blob的封装。写个笔记记录一下。
首先搞清楚概念及其各自的关系!!!
- 这些名词里,Blob、ArrayBuffer、File可以分为一类,它们都是数据
- fileReader是一种工具,用来读取数据
- formData是一个应用数据的场景
要点:
1. Blob 是一个容器。blob对象本质上是js中的一个对象,里面可以储存二进制编码格式的数据。
2.Blob需要声明Type类型
3.Blob拿到数据,通过Promise方式回调的到。
4.Blob文件如何下载?
将Blob转为一个Url,然后设置url的download属性,click点击下载。
4.异步使用FileReader
5.关于大文件的分片