Когда я поймаю исключение в обещании, можно ли просто повторить обещание или это называется анти-шаблон? Я знаю, что исключения не должны выступать в роли директоров потоков, но я не могу найти другого решения моей проблемы. Рассмотрим этот код:Повторить цепочку обещаний по ошибке
function a() {
var flow = GenerateUsername().then(RegisterUserWithGeneratedUsername()).catch(DatabaseConstraintError, flow);
return flow;
}
a();
Какие проблемы могут это приведет? Я боюсь, что это будет огромный потребитель памяти, если я что-то выделяю в цепочке, и он никогда не будет разрешен. Возможно, он попадет в максимальный стек вызовов. Как мне это решить?
Я думаю, что у вас есть проблема с '.catch' - в 99,99% библиотек Promise,' .catch' принимает (ну, использует, вы можете передавать столько, сколько хотите, их игнорируют) только ** one ** аргумент –