Pārlūkot izejas kodu

Поправки потенциальных багов, мелкий рефакторинг

Book Pauk 5 gadi atpakaļ
vecāks
revīzija
0dc650305a

+ 2 - 2
client/components/Reader/TextPage/TextPage.vue

@@ -477,7 +477,7 @@ class TextPage extends Vue {
 
 
     generateWaitingFunc(waitingHandlerName, stopPropertyName) {
     generateWaitingFunc(waitingHandlerName, stopPropertyName) {
         const func = (timeout) => {
         const func = (timeout) => {
-            return new Promise(async(resolve) => {
+            return new Promise((resolve, reject) => { (async() => {
                 this[waitingHandlerName] = resolve;
                 this[waitingHandlerName] = resolve;
                 let wait = (timeout + 201)/100;
                 let wait = (timeout + 201)/100;
                 while (wait > 0 && !this[stopPropertyName]) {
                 while (wait > 0 && !this[stopPropertyName]) {
@@ -485,7 +485,7 @@ class TextPage extends Vue {
                     await sleep(100);
                     await sleep(100);
                 }
                 }
                 resolve();
                 resolve();
-            });
+            })().catch(reject); });
         };
         };
         return func;
         return func;
     }
     }

+ 6 - 10
client/components/Reader/share/BookParser.js

@@ -67,7 +67,7 @@ export default class BookParser {
             }
             }
         */
         */
         const getImageDimensions = (binaryId, binaryType, data) => {
         const getImageDimensions = (binaryId, binaryType, data) => {
-            return new Promise (async(resolve, reject) => {
+            return new Promise ((resolve, reject) => { (async() => {
                 const i = new Image();
                 const i = new Image();
                 let resolved = false;
                 let resolved = false;
                 i.onload = () => {
                 i.onload = () => {
@@ -81,19 +81,17 @@ export default class BookParser {
                     resolve();
                     resolve();
                 };
                 };
 
 
-                i.onerror = (e) => {
-                    reject(e);
-                };
+                i.onerror = reject;
 
 
                 i.src = `data:${binaryType};base64,${data}`;
                 i.src = `data:${binaryType};base64,${data}`;
                 await sleep(30*1000);
                 await sleep(30*1000);
                 if (!resolved)
                 if (!resolved)
                     reject('Не удалось получить размер изображения');
                     reject('Не удалось получить размер изображения');
-            });
+            })().catch(reject); });
         };
         };
 
 
         const getExternalImageDimensions = (src) => {
         const getExternalImageDimensions = (src) => {
-            return new Promise (async(resolve, reject) => {
+            return new Promise ((resolve, reject) => { (async() => {
                 const i = new Image();
                 const i = new Image();
                 let resolved = false;
                 let resolved = false;
                 i.onload = () => {
                 i.onload = () => {
@@ -105,15 +103,13 @@ export default class BookParser {
                     resolve();
                     resolve();
                 };
                 };
 
 
-                i.onerror = (e) => {
-                    reject(e);
-                };
+                i.onerror = reject;
 
 
                 i.src = src;
                 i.src = src;
                 await sleep(30*1000);
                 await sleep(30*1000);
                 if (!resolved)
                 if (!resolved)
                     reject('Не удалось получить размер изображения');
                     reject('Не удалось получить размер изображения');
-            });
+            })().catch(reject); });
         };
         };
 
 
         const newParagraph = (text, len, addIndex) => {
         const newParagraph = (text, len, addIndex) => {