Ich habe eine Funktion, die eine Observable
zurückgibt, wenn eine Zeile in einer Tabelle angeklickt wird.Angular 2-4 Observable, das von einem Klickereignis kommt
private onEnrollmentHistory(val: Enrollment[]) {
this.enrollments = val;
console.log(this.enrollments);
}
getEnrollmentHistoryById(id: number) {
this.toggleMoreInfoDialog();
return this.store.getEnrollmentHistoryById(id)
.subscribe(
this.onEnrollmentHistory
);
}
Ich bin nicht sicher, wie Sie diese Informationen in die Komponente HTML erhalten. Ich kann nicht <div *ngFor="let enroll of someService | async">
tun, weil die ID nicht bekannt ist, bis jemand darauf klickt. Gibt es eine Syntax, die ich vermisse, um einen Text in einem div zu diesem Observable zu haben? etwas wie <div (ngModel)="this.bSubject.getValue()">
?
die Funktion aus einer Tabellenzeile genannt
<td>
(click)="getEnrollmentHistoryById(id)" class="fa fa-2x fa-info">
</td>
<div class="container">
<div class="row">
here are enrollments
<div *ngFor="let e of enrollments">
{{e}}
</div>
</div>
</div>
Das bedeutet, ist nur zu lesen, ich brauche nur etwas von der DB mit den beobachtbaren greifen, und zeigen Sie es auf der Seite auf einem Click-Ereignisse.
pls post the html wo '(klicken)' Ereignis ist gebunden. – Dhyey
Ziemlich unklar, da wir keine Ahnung davon haben, was Sie erreichen wollen. Aber wie wäre es mit '
@JBNizet Ich habe ein wenig mehr Kontext hinzugefügt. Im Grunde frage ich, ob es eine eckige Möglichkeit gibt, die Notwendigkeit für meine onEnrollmentHistory-Funktion zu entfernen, wenn ich eine Zustandsvariable haben muss, die gefüllt wird, sobald die Anfrage beendet ist. Selbst wenn ich es mit dem hinzugefügten zusätzlichen HTML-Code mache, sehe ich nichts in der HTML-Komponente, obwohl sich in der Konsole die richtigen Daten befinden. – wootscootinboogie