Ich versuche, ein Gerät mit einer externen JavaScript Web-Socket-Bibliothek zu verbinden und zu steuern. Momentan kann ich das aus meinem eckigen Service machen. Ich kann das Verbindungsobjekt nicht an die Komponente übergeben. Wie kann ich Update-Komponente erhalten, wenn das Service-Client-Objekt ist updated.Can jemand mir bitte helfenWie synchronisiere ich ein Web-Socket-Objekt von meinem Dienst mit der Komponente -angular 2
Komponentencode
doConnect(data){
this.submitted = true;
this.ipaddress = data.ipaddress;
this.portnumber = data.portnumber;
this.data = JSON.stringify(data);
console.log(this.data);
if(this.ipaddress===null && this.portnumber===null){
console.log('Null');
}else{
localStorage.setItem("ipaddress", this.ipaddress);
localStorage.setItem("portnumber", this.portnumber);
//calling the get connect from component
this.connectService.getConnect(this.ipaddress,this.portnumber);
if(localStorage.getItem("clientStatus")=='connected'){
this._router.navigate(['Master']);
}else{
this._router.navigate(['Home']);
}
}
}
Unten ist mein Code Connect
getConnect(ipaddress,portnumber){
console.log('coming');
var t = ipaddress;
var p = portnumber;
console.log(t,p);
client = new linear.client({transports: [
{type: 'websocket',
host: t, port: p}
]});
client.connect();
this.getStatusFromMcx();
var osbervable = Rx.Observable.create (function (obs) {
// Handle messages
client.transport.onopen = obs.onOpen.bind(obs);
client.onnotify = obs.onNext.bind(obs);
client.onerror = obs.onError.bind(obs);
client.transport.onclose = obs.onCompleted.bind(obs);
// Return way to unsubscribe
return client.ondisconnect.bind(client);
});