Das Teilen von socket.io zu anderen Modulen ergibt ein leeres Objekt

7

Ich versuche das Socket-Objekt von socket.io in verschiedenen node.js-Modulen zu teilen, obwohl ich scheitere und ein leeres Objekt mit

bekomme %Vor%

Mein Code:

app.js

%Vor%

routes / rss.js

%Vor%

Das ist die Ausgabe, die ich daraus erhalte:

%Vor%

Obwohl ich versucht habe und ich kann das gleiche mit socket.io nur in einer (app.js) Datei machen

%Vor%     
Patryk 09.12.2013, 01:17
quelle

2 Antworten

15

Da haben Sie in app.js :

%Vor%

Dann müssten Sie es wie folgt verwenden:

%Vor%

Das heißt, Sie haben an eine Eigenschaft mit dem Namen io angehängt. Wenn Sie also dieses Modul benötigen, erhalten Sie ein Objekt mit der Eigenschaft io .

Sie könnten das auch tun

%Vor%

und dann rss.js so lassen, wie Sie es jetzt haben.

Alles, was Sie gesagt haben, wenn Sie app.js mit Node ausführen, sehen Sie häufiger, dass das Objekt io in andere Module injiziert wird (anstatt umgekehrt); zum Beispiel:

app.js

%Vor%

routes/rss.js

%Vor%     
Michelle Tilley 09.12.2013, 01:30
quelle
3

Ich übergebe das io Objekt an den connection Handler.

%Vor%

./ routes / socket.js sollte Folgendes enthalten:

%Vor%     
chovy 09.12.2013 07:44
quelle