Как проверить ошибку в экспресс-обратном вызове прослушивания? - PullRequest
0 голосов
/ 05 июня 2019

У меня есть следующий код, чтобы проверить, была ли ошибка при запуске Express:

express()
    .listen(port, (err: Error) => {
        if (err) {
            console.error(err);
            return;
        }
        console.log(`Express started`);
    });

Однако в последнее время я получаю эту ошибку в компиляторе Typescript:

TS2345: Аргумент типа '(ошибка: ошибка) => void' не может быть назначен параметр типа '(() => void) | не определено.

Похоже, что функция обратного вызова listen() не принимает параметр ошибки. Если это так, как я должен проверять и обрабатывать ошибки при запуске Express?

1 Ответ

1 голос
/ 05 июня 2019

Объект Server является Node.js EventEmitter. Как и во всех EventEmitters, большинство ошибок передается событию error. Таким образом, вы можете поймать так:

express().listen(port, () => {
   console.log('Listening on port: ', port);
}).on('error', (e) => {
   console.log('Error happened: ', e.message)
});

Надеюсь, это будет полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...