2017-01-17 5 views
4

Gibt es Beispiele für Angular Universal mit WebSockets?Angular Universal Server Rendering WebSocket

Serverseitige Rendering weiß nicht, was ein WebSocket-Objekt in meinem Fall ist. Und wenn ich socket.io verwende, hängt der Node-Server beim Versuch, eine Verbindung herzustellen.

Einige zusätzliche Informationen über das Problem:

I Winkel-universal-Starter von Github heruntergeladen https://github.com/angular/universal-starter Welche

aus der Box funktioniert laufen 'npm installieren' und 'npm Start' in Ordnung, aber nach i hinzugefügt, um den folgenden Code

export class AppComponent implements OnInit { 
     ngOnInit() { 
      let webSocket = new WebSocket("----server url----") 
     } 
    } 

ich habe die folgenden Fehler in meinem NodeJS Serverkonsole AppComponent:

EXCEPTION: WebSocket is not defined 
ORIGINAL STACKTRACE: 
ReferenceError: WebSocket is not defined 
    at AppComponent.ngOnInit (/Volumes/Development/cacadu/website/universal-starter-master2/dist 
/server/index.js:41725:29) 
+0

Können Sie einen Beispielcode von dem zeigen, was Sie jetzt haben, und einige Fehler/Debugging-Informationen veröffentlichen, die herauskommen könnten? –

+0

Siehe meinen Kommentar unter – Marco

Antwort

1

Versuchen Sie, die websocket auf dem Client, beispielsweise rufen Sie erkennen können, ob es der Browser oder der Server mit diesen Einfuhren

import { isBrowser, isNode } from 'angular2-universal'; 
ist

Dann sie in Ihrem Code verwenden, könnte dies das beheben kann, Problem!

export class AppComponent implements OnInit { 
    ngOnInit() { 
     if (isBrowser) { 
      let webSocket = new WebSocket("----server url----"); 
     } 
    } 
} 
+0

Vielen Dank, ich hatte versucht Import {isBrowser, isNode} aus 'eckig2-universal/browser' ; Aber das ist natürlich falsch ... Die Dinge scheinen jetzt zu funktionieren! – Marco

+0

Froh, dass es funktioniert hat! :) –

0

Einige zusätzliche Informationen über das Problem:

I Winkel-universal-Starter von Github heruntergeladen https://github.com/angular/universal-starter Welche aus der Box funktioniert gut 'npm installieren' und 'npm start'

läuft aber nachdem ich den folgenden Code

export class AppComponent implements OnInit { 
     ngOnInit() { 
      let webSocket = new WebSocket("----server url----") 
     } 
    } 

ich habe die folgenden Fehler in meinem NodeJS Server-Konsole AppComponent hinzugefügt:

nur
EXCEPTION: WebSocket is not defined 
ORIGINAL STACKTRACE: 
ReferenceError: WebSocket is not defined 
    at AppComponent.ngOnInit (/Volumes/Development/cacadu/website/universal-starter-master2/dist 
/server/index.js:41725:29) 
+0

Ich habe diese Information zu der obigen Frage hinzugefügt, können Sie dies löschen, haben Sie versehentlich als Antwort geschrieben :) –

Verwandte Themen