2016-03-29 4 views
4

Async.waterfall() öğesindeki argümanların ilk işlev yerine üçüncü işleve aktarılmasıyla ilgili bir sorum var. Örneğin,Argümanlarda geçen Async şelalesi

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

şöyle Şimdi mümkün kullanmaktır "obj" olarak adlandırılan işlevinde bir argüman üçüncü ve ayrıca ikinci

adlı fonksiyonun callback'inde kuşağa argümanları kullanmak

cevap

13

Evet. Bunu yapabilirsin. aşağıya bakınız. son işlevi gör.

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

bunu yaptı, teşekkürler @Deendayal – RRP