2017-02-10 1 views
2

Ich weiß über Meteor.defer() und möchte es in einer Webservice-Antwort verwenden, da die Berechnung nach dem Senden der Antwort zurück erfolgen kann.Wie verzögert man die Funktion mit Parametern in Meteor?

Allerdings benötigt meine Funktion einen Parameter, und Meteor.defer() erhält nur einen Funktionsnamen, keine Parameter.

Ich versuchte _defer von underscore.js, aber da dies serverseitige Code ist, bekam ich einen Fehler, dass Meteor Code immer innerhalb einer Faser laufen sollte.

Was sind meine Optionen?

Antwort

3

könnten Sie .bind verwenden, um Parameter-Versorgung vor für die Funktion:

function test(a, b) { 
    console.log(a, b); 
} 

Meteor.methods({ 
    test() { 
    const testWithParam12 = test.bind(undefined, 1, 2); 
    Meteor.defer(testWithParam12); 
    } 
}); 
1

einfach eine anonyme Funktion Meteor.defer passieren:

var a = 1; 

var myFunction = function (param) { 
    //... do something 
}; 

Meteor.defer(function() { 
    myFunction(a); 
}); 
Verwandte Themen