MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Warum ist alert de[fine]d und zwei Zeilen später nicht (Meteor)?

Dies ist ein lustiges Verhalten von Meteor, bei dem Sie, wenn Sie Ihre Meteor-Methode sowohl auf der Client- als auch auf der Serverseite definieren, sowohl die Warnung in Ihrem Browser als auch ein Fehlerprotokoll im Server erhalten können.

Sie können die Meteor-Methode rein serverseitig definieren, indem Sie sie in den /server-Ordner legen und ausschließlich console.log verwenden.

Alternativ können Sie Ihren Code einschließen in:

if (Meteor.isClient) {
    // code
}

und machen Sie sich mit Benachrichtigungen auf den Weg.

Aktualisieren :

Wo Sie Ihre Meteor-Methoden definieren, ist ein Urteilsruf. Ein großer Vorteil, es sowohl auf dem Client als auch auf dem Server zu belassen, ist die Aktivierung der Latenzkompensation von Meteor.

Siehe die Optimistische Benutzeroberfläche Abschnitt:https://www.meteor.com/tutorials/blaze/security -mit-Methoden

Gleichzeitig bedeutet dies, dass Sie sich darüber im Klaren sein müssen, dass sowohl der Client als auch der Server Ihre Methode aufrufen. Ihr Code muss beide Fälle verarbeiten, d. h. Funktionen, die in einer Umgebung definiert sind, aber nicht in der anderen (z. B. alert ) erfordern besondere Aufmerksamkeit.