Suche…
Syntax
- Meteor.wrapAsync (func, [context])
Parameter
Parameter | Einzelheiten |
---|---|
Funktion: Funktion | Eine asynchrone / synchrone Funktion, die in eine Glasfaser eingebettet werden soll und einen Rückruf mit Parametern (error, result) erfordert. |
Kontext: beliebig (optional) | Ein Datenkontext, in dem die Funktion ausgeführt wird. |
Bemerkungen
Eine asynchron umschlossene Funktion kann immer noch asynchron ausgeführt werden, wenn ein Rückruf mit Parametern (error, result) => {}
als Parameter für die umschlossene Funktion angegeben wird.
Die Einbindung von Meteor.wrapAsync
ermöglicht die Vereinfachung von Code mit Callbacks, da Callbacks jetzt als Kompensation für die Sperrung des Meteor.wrapAsync
seiner aktuellen Fiber
vernachlässigt werden können.
Um zu verstehen, wie Fasern funktionieren, lesen Sie hier: https://www.npmjs.com/package/fibers .
Asynchronous NPM-Methoden synchron mit Callbacks ausführen.
In diesem Beispiel wird die asynchrone Methode oauth2.client.getToken(callback)
aus dem Paket NPM-Paket simple-oauth2
in eine Glasfaser eingeschlossen, sodass die Methode synchron aufgerufen werden kann.
const oauth2 = require('simple-oauth2')(credentials);
const credentials = {
clientID: '#####',
clientSecret: '#####',
site: "API Endpoint Here."
};
Meteor.startup(() => {
let token = Meteor.wrapAsync(oauth2.client.getToken)({});
if (token) {
let headers = {
'Content-Type': "application/json",
'Authorization': `Bearer ${token.access_token}`
}
// Make use of requested OAuth2 Token Here (Meteor HTTP.get).
}
});
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow