UnhandledPromiseRejection, несмотря на неожиданное ожидание

В следующем коде

      // file: main.js
    class A {
    
        async start() {
            
            throw 'error';
        }
    }
    
    module.exports = A;



// file index.js

    var r = require('./main.js'); 
    
    let v = new r();
    
    try {
        v.start(); // error is caught when I use r.start() though
    } catch (e) {
        console.error(e);
    }

Я новичок в Javascript и Node.js, Node.js выдает UnhandledPromiseRejection, когда я явно улавливаю исключение, почему это происходит?

2 ответа

Ваш код не работает, потому что вам нужно дождатьсяv.start()

Это будет работать:

Эта ошибка возникла либо из-за вставки внутри асинхронной функции без блока catch

Чтобы увидеть причину:

узел --trace-warnings index.js

Другие вопросы по тегам