In Meteor verwende ich den Rückgabewert von Collection.update() (1
) auf dem Client, um eine Nachricht an den Benutzer anzuzeigen. Die Methode wird sowohl auf dem Client als auch auf dem Server ausgeführt.Collection.update() mit Callback gibt undefined zurück
Betrachten Sie die folgende Methode, die wie erwartet (kehrt 1
) funktioniert:
Meteor.methods({
updateDocument(documentId) {
return Collection.update(
documentId,
{$set: {updatedBy: this.userId}}
);
}
});
nächstes die folgende Methode betrachten, die undefined
zurückgibt:
Meteor.methods({
updateDocument(documentId) {
return Collection.update(
documentId,
{$set: {updatedBy: this.userId}},
(error, result) => {
return 1;
}
);
}
});
Was ich hier fehlt? Warum gibt updateDocument()
nicht zurück 1
?
Ok, danke. Ich denke ich verstehe. Nun, wie kann ich dem Benutzer mitteilen, dass das Update erfolgreich war? Mit anderen Worten: Wie kann die Ereignisfunktion auf dem Client wissen, dass das Dokument erfolgreich aktualisiert wurde, wenn die von ihm aufgerufene Methode nichts zurückgibt? –
Die synchrone "update" -Funktion löst eine Ausnahme aus, wenn ein Fehler auftritt. Sei ein guter Pokemon-Meister und fange sie alle. :) – aedm