diff --git a/client/components/Reader/TextPage/TextPage.vue b/client/components/Reader/TextPage/TextPage.vue index 79b66777..77c51b4f 100644 --- a/client/components/Reader/TextPage/TextPage.vue +++ b/client/components/Reader/TextPage/TextPage.vue @@ -477,7 +477,7 @@ class TextPage extends Vue { generateWaitingFunc(waitingHandlerName, stopPropertyName) { const func = (timeout) => { - return new Promise(async(resolve) => { + return new Promise((resolve, reject) => { (async() => { this[waitingHandlerName] = resolve; let wait = (timeout + 201)/100; while (wait > 0 && !this[stopPropertyName]) { @@ -485,7 +485,7 @@ class TextPage extends Vue { await sleep(100); } resolve(); - }); + })().catch(reject); }); }; return func; } diff --git a/client/components/Reader/share/BookParser.js b/client/components/Reader/share/BookParser.js index a5faba72..95a9c887 100644 --- a/client/components/Reader/share/BookParser.js +++ b/client/components/Reader/share/BookParser.js @@ -67,7 +67,7 @@ export default class BookParser { } */ const getImageDimensions = (binaryId, binaryType, data) => { - return new Promise (async(resolve, reject) => { + return new Promise ((resolve, reject) => { (async() => { const i = new Image(); let resolved = false; i.onload = () => { @@ -81,19 +81,17 @@ export default class BookParser { resolve(); }; - i.onerror = (e) => { - reject(e); - }; + i.onerror = reject; i.src = `data:${binaryType};base64,${data}`; await sleep(30*1000); if (!resolved) reject('Не удалось получить размер изображения'); - }); + })().catch(reject); }); }; const getExternalImageDimensions = (src) => { - return new Promise (async(resolve, reject) => { + return new Promise ((resolve, reject) => { (async() => { const i = new Image(); let resolved = false; i.onload = () => { @@ -105,15 +103,13 @@ export default class BookParser { resolve(); }; - i.onerror = (e) => { - reject(e); - }; + i.onerror = reject; i.src = src; await sleep(30*1000); if (!resolved) reject('Не удалось получить размер изображения'); - }); + })().catch(reject); }); }; const newParagraph = (text, len, addIndex) => {