2017-09-02 39 views
1

我用模塊的NodeJS「WS」,並安裝分型typings i dt~ws
如何擴大打字稿定義模塊的NodeJS

import * as WebSocket from "ws"; 
function add(client:WebScoket){ 
    let cid = client.clientId; 
} 

我想給展開WebSocket財產clientId,但我不知道怎麼辦。

我有試着寫跟隨代碼在我的定義文件index.d.ts

declare module "ws" { 
    class WebSocket { 
     ip: string; 
     clientId: number; 
     project: string; 
    } 
} 

但效果欠佳

回答

0

您是否嘗試過使用的WebSocket類的擴展和使用它嗎?

例如:

interface WebSocketWithCliendId extends WebSocket { 
    clientId: string; 
} 
+0

我已經用這種方法,但所有的定義'WebSocket'從 「WS」'index.d.ts'的文件,需要改爲'WebSocketWithCliendId'。例如: '''ws.on(「connection」,(client,req)=> {''' 應該寫: '''ws.on(「connection」,(client:WebSocketWithCliendId,req) => {''' – 3tion