繁体   English   中英

角度:无法读取未定义的属性“ on”

[英]Angular : Cannot read property 'on' of undefined

我正在尝试将Angular应用程序中的websockets与数据表组件一起使用

在每次添加时,我都运行conect()函数以更新客户端上的内容。

import * as io from "socket.io-client";

@Component({
  selector: "app-liste-projets",
  templateUrl: "./liste-projets.component.html",
  styleUrls: ["./liste-projets.component.css"]
})
export class ListeProjetsComponent implements OnInit {
  constructor(private ajoutProj: AjoutprojService) {}
...


}
export class UserDataSource extends DataSource<any> {

  constructor(private ajoutProj: AjoutprojService) {
    super();
  }
  socket = io('http://127.0.0.1:8080');

  connect():Observable<NouveauProjet[]> {
    var data= this.ajoutProj.getAllProj();

    return data;

  }
  this.socket.on("add", ()=>{
    this.connect()      })
}

我在this.socket.on..行上收到此错误:

Uncaught TypeError: Cannot read property 'on' of undefined

尝试这个

export class UserDataSource extends DataSource<any> {
   private socket: SocketIOClient.Socket;
  constructor(private ajoutProj: AjoutprojService) {   
    super();

  }
  connect():Observable<NouveauProjet[]> {
    this.socket = io.connect('http://127.0.0.1:8080')
    this.socket.on('connect', () => {
            console.log('WidgetSocket: Opened a new socket connection', this.socket.id);
    });
    var data= this.ajoutProj.getAllProj();
    return data;
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM