ngx-socket-io不起作用{}没有属性msg

时间:2019-05-16 13:37:30

标签: sockets angular7

尝试只做ngx-socket-io教程,我不断收到错误消息,类型{}中不存在属性msg。

https://www.npmjs.com/package/ngx-socket-io

我已经正确安装了所有东西,并在AppModule.ts中拥有了我需要的一切,并且还导入了地图和套接字。

我的ChatService.ts


constructor(private socket: Socket){}

sendMessage(msg: String){
    this.socket.emit("message", msg);
}

getMessage() {
   return this.socket.fromEvent("message").pipe(map(data => data.msg));
}

1 个答案:

答案 0 :(得分:0)

.fromEvent方法是一个泛型,将使用类型说明符...尝试提供特定类型或将数据定义为any。例如:

在某处定义:

export IMyDataType {
    msg: string;
}

然后使用指定的类型调用fromEvent:

getMessage() {
   return this.socket.fromEvent<IMyDataType>("message").pipe(map(data => data.msg));
}

或者假设数据为any

getMessage() {
   return this.socket.fromEvent("message").pipe(map((data: any) => data.msg));
}