Аргумент «ошибка» при использовании асинхронного водопада в node.js

Я пытаюсь выполнить ряд функций, каждая из которых передает обратный вызов следующий. Сейчас это выглядит так (извините за мелкие ошибки, я переписываю его по мере публикации!):

function func1(callback) {
    callback(null, "stuff");
}

function func2(input, callback) {
    callback(null, "foo" + input);
}

async.waterfall([func1, func2], function(err, result) {
    sys.puts(result);
});

Мой первый вопрос заключается в том, что я не уверен, как правильно запустить эту функцию, поскольку она не может принимать ввод . В конце концов я собираюсь заключить это в локальную функцию, но это все еще вызывает у меня некоторое беспокойство.

Во-вторых, хотя это работает, я понятия не имею, как аргумент "err" играет в этом. Если я пытаюсь вставить его в список аргументов, он ломается по-разному. Я хотел бы иметь возможность отлавливать ошибку в любой функции по отдельности - или это необходимо, поскольку у меня есть ошибка в последнем переданном обратном вызове?

7
задан hippietrail 11 February 2013 в 14:54
поделиться