FileReader 的使用

一: 官方介绍:

    FileReader 对象容许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用 File 或 Blob 对象指定要读取的文件或数据。javascript

    其中File对象能够是来自用户在一个<input>元素上选择文件后返回的FileList对象,也能够来自拖放操做生成的 DataTransfer对象,还能够是来自在一个HTMLCanvasElement上执行mozGetAsFile()方法后返回结果。ps: 来自Web技术文档的阐述java

二:FileReader的使用和一些经常使用的方法和事件:

1)使用方法:

FileReader() 是一个构造函数。 使用的时候,先经过构造函数初始化一个FileReader对象,如:异步

/* 初始化一个FileReader 对象 */
const reader= new  FileReader()
/* 开始读取指定的Blob中的内容。一旦完成,result属性中将包含一个data: URL格式的字符串以表示所读取文件的内容。 */
reader.readAsDataURL(file)
/* 在读取后,触发的事件,并获取读取文件的地址 */
reader.onload = (e) => {
      let base64Str = reader.result.split(',')[1]
       img.src = e.target.result
}
复制代码

2) 方法:

(1) FileReader.abort() 做用:停止读取操做。函数

(2) FileReader.readAsArrayBuffer() 做用: 开始读取指定的Blob中的内容,一旦完成,result属性中保存的将是被读取文件的ArrayBuffer数据对象。spa

(3) FileReader.readAsBinaryString() 做用: 开始读取指定的Blob中的内容,一旦完成,result属性中将包含所读取文件的原始二进制数据。code

(4) FileReader.readAsDataURL() 做用:开始读取指定的Blob中的内容,一旦完成,result属性中将包含一个data: URL格式的字符串以表示所读取文件的内容。此方法较为经常使用。对象

(5) FileReader.readAsText() 做用: 开始读取指定的Blob中的内容,一旦完成,result属性中将包含一个字符串以表示所读取的文件内容。事件

3)事件

(1) FileReader.onabort 做用: 该事件在读取操做被中断时触发。图片

(2) FileReader.onerror 做用: 该事件在读取操做发生错误时触发。ip

(3) FileReader.onload 做用: 该事件在读取操做完成时触发。该事件较为经常使用。

(4) FileReader.onloadstart 做用: 该事件在读取操做开始时触发。

(5) FileReader.onloadend 做用: 该事件在读取操做结束时(要么成功,要么失败)触发。

(6) FileReader.onprogress 做用:该事件在读取Blob时触发。

项目中有些上传文件和图片都用到了FileReader,因此作了一个简单的总结。但愿对你有帮助,不要忘了点个赞哟。 ღ( ´・ᴗ・` )比心

相关文章
相关标签/搜索