Как использовать управляющие структуры дескрипторов с помощью библиотеки функционального программирования fluture

Я работаю над переводом следующего примера кода на функциональный подход:

      let [state, cities] = await Promise.all([States.find({name: name}).limit(1).exec(), Cities({stateName: name}).exec()]);
state = convertToAnObject(state);

if (state && await state.hasRequiredPopulation()) {
    return cities;
} else {
    throw new NotFoundError("There are no cities for " + name + " that match the necessary requirements.");
}

У меня возникли проблемы с пониманием того, как это должно быть преобразовано в конвейер и т. Д. С учетом Promise.all, структуры управления (if-then-else) и обработки ошибок. Конечно, кажется, что я бы использовал encaseP для Promise.all, но после этого это сбивает с толку.

Может ли кто-нибудь предоставить для этого случая пример перевода fluture?

0 ответов

Другие вопросы по тегам