в каждом блоке, хочется иметь один умный
не обрабатывай на нижних уровнях, тока на верхнем 🤷♂️
.then() .then() .then() .catch() .then(() => 'Success')
https://gist.github.com/del333ted/670568d5ed22bdb337f160f55384f4f8 ну есть вот такой паттерн
А зачем везде try/catch ? Попробуй ловить в одном месте и там же обрабатывать, создай класс с ошибками, и там перечисли типы ошибок , что бы знать от куда идёт ошибка, старайся в действительно исключительных случаях использовать try/catch
и каждая функция исключение кидает? что она делает?
если тебе нужно минимизировать обработку ошибок и ты используешь структуры а-ля <some, error> (как раз результат промиса), то смотри паттерн - railway. https://medium.com/@naveenkumarmuguda/railway-oriented-programming-a-powerful-functional-programming-pattern-ab454e467f31
Используй монаду Either
Обсуждают сегодня