Ich versuche, eine Callback-Funktion in einer Serviceklasse zu implementieren, die Daten an die Komponentenklasse zurückgeben muss.Observable in einer Callback-Funktion - Winkel 2
ChatComponent.ts
export class ChatComponent implements OnInit {
constructor(public _chatService : ChatService) {
_chatService.joinChat()
}
OnInit(){
}
// I need to get the `msg` object from the ChatService class
didReceiveMessage(msg){
console.log(“Message received from chat service class”+msg);
}
}
ChatService.ts
import { Component, Input } from '@angular/core';
import { Injectable } from '@angular/core';
@Injectable()
export class ChatService {
public chatObj : SomeChatObject;
constructor() { }
joinChat(){
//Join chat related functionality
this.chatObj.addHandler(this.onMessageReceivedHandler, null, "message");
}
onMessageReceivedHandler = (message) => {
//Send `message` back to `didReceiveMessage ` method in ChatComponent.ts
return true;
}
}
Ich habe ein Beispiel für die Verwendung Http beobachtbare Rückruf gesehen. Hier habe ich meinen Callback explizit mit addHandler hinzugefügt. Ich werde das Nachrichtenobjekt in der Methode 'onMessageReceivedHandler' erhalten. Aber ich muss es ChatComponent übergeben. Wie kann ich die Daten weitergeben?
machen eine return-Anweisung in der Callback-Methode abonnieren. – Jai