В Node.js Как я могу остановить выполнение скрипта, успешно написать сообщение об ошибке в консоль, а затем выйти из скрипта?

Я использую Node.js, используя VS Code в Windows.

При обнаружении состояния ошибки, как я могу полностью остановить выполнение скрипта в этот момент, кроме как написать окончательное сообщение об ошибке в консоль?

Мне нужно будет дождаться подтверждения того, что сообщение об ошибке было успешно отображено пользователю, а затем полностью выйти из остальной части скрипта без дальнейшего выполнения кода после успешной записи консоли?


person Richard P    schedule 23.04.2021    source источник
comment
После того, как ваше сообщение об ошибке будет записано в консоль, вы можете остановить процесс узла с помощью «process.exit (1)». Взгляните еще раз на этот опубликовать.   -  person Martin H.    schedule 24.04.2021


Ответы (1)


Как указано в документах Nodejs, безопасный способ выйти без усечения вывода – установите процесс exitCode, а затем создайте необработанное исключение:

// How to properly set the exit code while letting
// the process exit gracefully.
if (someConditionNotMet()) {
   console.log('final error message');
   process.exitCode = 1;
   throw new Error('Exit'); // must me NOT handled by a try/catch
}

В противном случае, если вы хотите выйти немедленно, вы можете просто вызвать process.exit(1), но вы не можете быть уверены, что будет отображаться каждый ожидающий вывод: некоторый текстовый вывод может быть асинхронным.

person lifeisfoo    schedule 23.04.2021