Promise File Reader
npm install promisify-file-reader







``html`
`html`
`text`
dist/
├─ index.cjs ( CommonJS )
├─ index.js ( UMD )
├─ index.min.js ( UMD, compressed )
├─ index.mjs ( ES Module )
└─ index.min.mjs ( ES Module, compressed )
supported all FileReader methods:
- readAsArrayBufferreadAsBinaryString
- readAsDataURL
- readAsText
-
> FileReader#readAsBinaryString is not available in some browser, like IE 10
>
> we use arrayBuffer to binaryString to support this method
example:
`js`
const fileReader = new PromisifyFileReader()
const result = await fileReader.readAsArrayBuffer(file)
in fact new PromisifyFileReader() is not really required, all methods can use as static
- readAsArrayBufferreadAsBinaryString
- readAsDataURL
- readAsText
-
example:
`js`
const result = await PromisifyFileReader.readAsArrayBuffer(file)
you can also strip the readAs prefix
- arrayBufferbinaryString
- dataURL
- text
-
Notice: shortcuts are NOT available in prototype
example:
`js`
const result = await PromisifyFileReader.arrayBuffer(file)
// => same as readAsArrayBuffer
the ES Module build exports
`js
{
// default
PromisifyFileReader as default,
// named
arrayBuffer,
binaryString,
dataURL,
text,
readAsArrayBuffer,
readAsBinaryString,
readAsDataURL,
readAsText,
}
`
import example:
`js
// import default
import PromisifyFileReader from 'promisify-file-reader'
// import named
import {
arrayBuffer,
// ...
} from 'promisify-file-reader'
// import both
import PromisifyFileReader, {
arrayBuffer,
// ...
} from 'promisify-file-reader'
``