mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-04-24 20:07:51 +00:00
Merge pull request #171 from Philreact/feature/update-filetobase64
use only one instance of fileReader
This commit is contained in:
commit
aa7080f141
@ -2,20 +2,29 @@ import nacl from '../../../../crypto/api/deps/nacl-fast.js'
|
|||||||
import ed2curve from '../../../../crypto/api/deps/ed2curve.js'
|
import ed2curve from '../../../../crypto/api/deps/ed2curve.js'
|
||||||
|
|
||||||
|
|
||||||
|
let reader = new FileReader();
|
||||||
export const fileToBase64 = (file) =>
|
export const fileToBase64 = (file) =>
|
||||||
new Promise((resolve, reject) => {
|
new Promise((resolve, reject) => {
|
||||||
const reader = new FileReader();
|
if (!reader) {
|
||||||
|
reader = new FileReader();
|
||||||
|
}
|
||||||
reader.readAsDataURL(file);
|
reader.readAsDataURL(file);
|
||||||
reader.onload = () => {
|
reader.onload = () => {
|
||||||
const dataUrl = reader.result;
|
const dataUrl = reader.result;
|
||||||
if (typeof dataUrl === "string") {
|
if (typeof dataUrl === "string") {
|
||||||
const base64String = dataUrl.split(',')[1];
|
const base64String = dataUrl.split(',')[1];
|
||||||
|
reader.onload = null;
|
||||||
|
reader.onerror = null;
|
||||||
resolve(base64String);
|
resolve(base64String);
|
||||||
} else {
|
} else {
|
||||||
|
reader.onload = null;
|
||||||
|
reader.onerror = null;
|
||||||
reject(new Error('Invalid data URL'));
|
reject(new Error('Invalid data URL'));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
reader.onerror = (error) => {
|
reader.onerror = (error) => {
|
||||||
|
reader.onload = null;
|
||||||
|
reader.onerror = null;
|
||||||
reject(error);
|
reject(error);
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user