10

Typescriptプロジェクトでsocket.ioを使用したいのですが、サーバー側のtypescript用の.d.tsファイルしか見つかりませんでした。

これは良い例です:https ://github.com/soywiz/typescript-node-definitions/blob/master/socket.io.d.ts

TypeScriptをSocket.ioと組み合わせて使用​​する方法を示しています。ただし、クライアント側ではJavaScriptを使用します。

必要なのは、クライアント側のTypeScript用の.d.tsファイルです。これは、次の行からのエラーメッセージを解決します。

var socket=io.connect("localhost");

名前「io」は現在のスコープに存在しません

適切な定義ファイルはどこにありますか?

4

4 に答える 4

13

クライアントでsocket.io-client d.tsファイルを使用し、サーバーでsocket.io d.tsファイルを使用する必要があります。

于 2015-10-10T12:11:45.453 に答える
11

独自の .d.ts ファイルを作成しました。かなり短いですが、うまく機能します。

declare var io : {
    connect(url: string): Socket;
};
interface Socket {
    on(event: string, callback: (data: any) => void );
    emit(event: string, data: any);
}

この宣言ファイルはクライアント側の Typescript にインポートでき、socket.io 標準の例が機能します。これが私の Typescript バージョンです。

var socket=io.connect("localhost");
socket.on("news",(data:any)=>alert(data));
socket.emit("news","hello");
于 2012-12-30T16:55:42.453 に答える