Ich schreibe meine erste Angular 2/4 Anwendung mit Redux (ich bin neu in diesem Muster), und ich stecke in einem Problem fest. Ich verwende @ ngrx/storeAngular + redux + ngrx: Daten erhalten
Es gibt ein Modell namens Content. Mein Speicher (app.store.ts) ist:
export interface AppStore {
contents: {id: number, Content};
contentContents: {id: number, Array};
}
'Inhalt' hat eine Liste aller Inhalte (ID 1, 1 Inhalt; ID 2, Inhalt 2). 'contentContents' hat eine Liste von Inhalten und deren Kind. Ein Inhalt kann untergeordnete Inhalte enthalten. Deshalb mag ich wie ein Objekt halten:
{1: [2, 3, 6], 2: [7, 9, 10], 6: [11, 4, 5]}
Meine Reduktoren machen das schon, aber ich habe Probleme.
Ich habe die contentContents ausgewählt:
let subscription = this.store.select(store => {
return store.contentContents;
})
und abonniert:
subscription.subscribe(contentContents => {
})
ist es eine Möglichkeit, ein bestimmtes Element von contentContents zu abonnieren? Ich meine, ich möchte wissen, wann ein bestimmter Artikel von contentContents geändert wird. Beispiel: Die Komponente, die den Inhalt # 1 anzeigt, muss nur gewarnt werden, wenn contentContents [1] geändert wird, aber in der Art, wie ich sie erstellt habe, wird sie jedes Mal gewarnt, wenn contentContents geändert wird.
Andere Sache, wenn ich das erste Problem lösen kann: gibt es eine Möglichkeit, vom Speicher den Inhalt von einer bestimmten ID abzufragen?
Nehmen wir an, ich habe folgendes: 1: [2, 3, 6] Inhalt # 1 hat Inhalt # 2, # 3 und # 6 als Kind. Wie bekomme ich Inhalt # 2, Inhalt # 3 und Inhalt # 6
Sie sollten nicht 'subscription s Cribe. Ein Abonnement soll die Rückgabe eines Abonnements sein. (was hilfreich ist, um sich abzumelden, wenn die Komponente zerstört wird) – Maxime