Angular Typescript实现套接字处理程序的问题



我正试图实现多人拼字游戏和处理套接字(客户端)。我实现了一个模块,但我不知道如何解决这个问题:

import * as io from 'socket.io-client';
export module SocketHandler {
let activeSocket: SocketIOClient.Socket;
export function requestSocket(server: string): any {
if (activeSocket === undefined) {
activeSocket = io.connect(server);
}
return activeSocket;
}
export function disconnectSocket(): void {
activeSocket.disconnect();
activeSocket = undefined;
}
}

错误:在套接字中找不到导出'连接'(作为'io'导入)。io-client'(可能的导出:Manager, Socket, default, io)错误TS2503:找不到命名空间'SocketIOClient'.

你能帮帮我吗?

您需要在所有内容之前使用前缀io,因为您使用此名称导入了它。直接使用io连接

activeSocket: io.Socket;
requestSocket(server: string): any {
if (this.activeSocket === undefined) {
this.activeSocket = io.io(server);
}
return this.activeSocket;
}
disconnectSocket(): void {
this.activeSocket.disconnect();
this.activeSocket = undefined;
}

你能不能试试:

import * as socketIO from 'socket.io'

最新更新