2016-03-29 7 views
4

Ich habe eine Frage in Bezug auf die Übergabe von Argumenten in async.waterfall() an die dritte Funktion und nicht die erste Funktion. Zum Beispiel, wie folgendenAsync Wasserfall in Argumenten übergeben

async.waterfall([ 
    first, 
    second, 
    async.apply(third, obj) 
], function(err, result){}); 

Jetzt ist es möglich, die zu verwenden „obj“ als Argument in der Funktion mit dem Namen dritte und auch die Argumente verwenden, um von dem Rückruf von Funktion zweite

genannt weitergegeben

Antwort

13

Ja. Das kannst du machen. siehe unten. Siehe die letzte Funktion.

var async = require('async'); 

    async.waterfall([ 
     myFirstFunction, 
     mySecondFunction, 
     async.apply(myLastFunction, 'deen'), 
    ], function (err, result) { 
     console.log(result); 
    }); 
    function myFirstFunction(callback) { 
     callback(null, 'one', 'two'); 
    } 
    function mySecondFunction(arg1, arg2, callback) { 
     // arg1 now equals 'one' and arg2 now equals 'two' 
     callback(null, 'three'); 
    } 
    function myLastFunction(arg1, arg2, callback) { 
     // arg1 is what you have passed in the apply function 
     // arg2 is from second function 
     callback(null, 'done'); 
    } 
+0

yep das tat es, danke @Deendayal – RRP