2

いくつかの代替案を調査するためにasync.jsメソッドを選択することに疑問があり、最初の代替案が成功したときに停止します。

例えば:

async.probeSeries([
    function (callback) {
        // try something and call callback
        // without arguments - probing fails
        callback();
    },
    function (callback) {
        // try something and call callback
        // with arguments - probing successful
        callback(null, ok);
    },
    function (callback) {
        // will be not executed, because
        // the second one is successful
        callback();
    }
], function (err, result) {
    // handle the result returned by the second probe
});

シリーズを使用して結果をエラーとして返す方法が回避策になると思いますが、より良い方法はありますか?

4

1 に答える 1

1

多分あなたは探していdetectSeriesますか?同じ関数で配列の値をチェックし、これらの値のいずれかでコールバックするため、例とは少し異なりますが、問題に適用できる場合があります。

ところで、これはQのような promise ライブラリの完璧なユースケースのように見えます。

probe1().fail(probe2).fail(probe3).done(resulthandler, errhandler);
于 2013-10-02T12:50:14.250 に答える