Ich habe eine Art langsame Verbindung zwischen meinem Meteorserver und der entfernten Mongodb-Instanz. Kann ich irgendwie auf einer Client-Seite warten und keine Abonnements registrieren, bis der Server keine Verbindung zu mongo aufgebaut hat?
Ein primitiver Weg, dies zu tun, ist auf eine Änderung in Meteor.userId () mit Meteor.autorun zu hören. Wenn Sie in der Lage sind, dies zu erhalten, würden Sie wissen, dass Sie mit MongoDB verbunden sind. Wenn Sie sich nicht mit der Authentifizierung befassen, können Sie auf der Serverseite eine Methode erstellen, die etwas von MongoDB zurückgibt. Wenn es etwas zurückgibt, können Sie bei Erfolg auf der Clientseite alle Abonnements starten.
Die zuverlässigste Methode hierfür ist der Aufruf Meteor.call. Wenn Sie dies als einen synchronen Aufruf (kein Rückruf) tun, wartet der Client, bis der Aufruf abgeschlossen ist. Hier ist, wie es asynchron zu tun:
%Vor%und dann
%Vor%