check meteor synchronous

check - Sintaxis Meteor wrapAsync



meteor server (1)

¿Cómo uso Meteor wrapAsync ?

Debajo está lo que intento hacer

if (tempTreatment.groupId === undefined) { // create new group Meteor.wrapAsync(Meteor.call(''createTreatmentGroup'', salon, tempTreatment.groupName, tempTreatment.groupName)); // get group id var getGroup = Meteor.wrapAsync(Meteor.call(''getTreatmentGroup'', salon, tempTreatment.groupName)); console.log(getGroup); tempTreatment.groupId = getGroup._id; }

Quiero ejecutar estas dos funciones de Meteor.call manera sincronizada, pero no estoy undefined en console.log(getGroup); que Shuold simplemente devuelve un objeto.


Meteor.wrapAsync es una API del lado del servidor diseñada para envolver las funciones asíncronas de Node.js que requieren una devolución de llamada como último argumento, para que aparezcan sincrónicas mediante el uso de Future s, una sub biblioteca de Fibres. (más sobre esto aquí: https://www.discovermeteor.com/blog/wrapping-npm-packages/ )

No está destinado a ser utilizado por el lado del cliente para convertir Meteor.call asíncrono en una llamada síncrona porque en el navegador, las llamadas de invocación de método remoto son SIEMPRE asíncronas.

Para resumir, simplemente no puede lograr lo que está tratando de hacer, tiene que usar devoluciones de llamada y anidar su segunda llamada al método dentro de la devolución de llamada exitosa de su primera llamada al método.