[英]Angular Universal server rendering WebSocket
是否有任何帶WebSockets的Angular Universal示例?
在我的情況下,Serverside渲染不知道WebSocket對象。 如果我使用socket.io,節點服務器在嘗試建立連接時會掛起。
有關此問題的一些其他信息:
我從github下載了角度通用啟動器: https : //github.com/angular/universal-starter運行'npm install'和'npm start'的開箱即用
但在我將以下代碼添加到AppComponent之后
export class AppComponent implements OnInit {
ngOnInit() {
let webSocket = new WebSocket("----server url----")
}
}
我的NodeJs服務器控制台中出現以下錯誤:
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)
嘗試僅調用客戶端上的websocket,例如,您可以檢測它是瀏覽器還是具有這些導入的服務器
import { isPlatformBrowser } from '@angular/common';
import { Inject, PLATFORM_ID } from '@angular/core';
然后在代碼中使用它們,這可能能解決問題!
@Component({ ... })
export class AppComponent implements OnInit {
private isBrowser: boolean = isPlatformBrowser(this.platformId);
constructor(
@Inject(PLATFORM_ID) private platformId: Object
) {
if (isBrowser) {
let webSocket = new WebSocket("----server url----");
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.