Показать сообщение отдельно
  #1 (permalink)  
Старый 21.05.2022, 19:16
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Дружественная обработка ошибок библиотекой
Всем привет
Есть такая нетривиальная задача

Нужно поймать ошибку, обработать и бросить ее дальше
С такой задачей справляется тривиальный код
try {
    externalCodeWithError();
} catch(e) {
    processError(e);
    throw e;
}


Но проблема такого кода, что отладчик(без галочки "Pause on uncaught exceptions") не останавливается на исходной ошибке, а только на перепроброске

А хотелось бы, чтобы останавливалось именно в месте возникновения ошибки
При этом без галочки "Pause on uncaught exceptions", потому что выставляя ее, в общем случае можно получить кучу ненужнгых остановов в пойманных исключениях от другого кода

В общем, хотелось бы получить объект ошибки, сохраняя при этом возможность удобной отладки externalCodeWithError
Решение предполагается использовать в коде библиотеки, именно поэтому не хотелось бы мешать пользователям библиотеки отлаживать их код

Кто-нибудь знает кросс-браузерный/платформенный способ обработать ошибку таким образом?
Ответить с цитированием