Pull to refresh

Comments 2

Для примера рассмотрим код ECMAScript 2015:
Хм… Все еще пользуюсь промисами, как и многие другие. На самом деле, код гораздо проще и читабельнее, чем в статье. Возвращать new Promise из then() — глупо. Как я бы переписал:

function apiDoSomethingMoreComplex(withThis) {
    const urlA = '...';
    const urlB = '...';

    httpLib.request(urlA, withThis)
        .then(result => {
            const parsed = parseResult(result);
            return database.update(updateStatement, parsed);
        }).then(result => {
            return httpLib.request(urlB, result);
        }).then(result => {
            return worker.processData(result);
        }).then(result => {
            logger.info(`apiDoSomethingMoreComplex success (${result})`);
        }).catch(error => {
            logger.error(error);
        });
}

Добавил .catch() — похоже на try, видно, где отлавливаются ошибки. Убрал вложенный new Promise.


Здорово, что ввели async/await, но программировать с промисами не сильно сложнее. Обещаю, что буду использовать Babel

Sign up to leave a comment.