So entfernen Sie ein bestimmtes Element aus ObservableArrayany

9

Es gibt ein Observable für das Array von Orten:

%Vor%

In der Vorlage wurde es mit der asynchronen Pipe verwendet:

%Vor%

Nach einigen Benutzeraktionen muss ich den Ort mit der spezifischen ID aus diesem Array entfernen. Ich habe so etwas in meinem Code, aber es funktioniert nicht:

%Vor%

Können Sie mir dabei helfen?

    
daslashi 04.07.2016, 10:04
quelle

2 Antworten

18

Sie können es nicht so machen, weil Sie eine Observable nicht "updaten" können (d. h. Zustände werden nicht beibehalten), aber Sie können dadurch auf ein Ereignis reagieren.

Für Ihren Anwendungsfall würde ich den scan -Operator nutzen und zwei Ströme in einen einzigen zusammenführen:

  • eins für das anfängliche Laden
  • ein anderes für das Lösch-Ereignis.

Hier ist ein Beispiel:

%Vor%

Um eine Elementlöschung auszulösen, senden Sie einfach ein Ereignis zum Thema:

%Vor%

Siehe dieses Plunkr: Ссылка .

    
Thierry Templier 04.07.2016, 12:28
quelle
1

Die Filterfunktion ist unveränderbar und ändert das ursprüngliche Array nicht.

Ich würde die deletePlace-Funktion in etwa so ändern: -

%Vor%     
Krishnanunni Jeevan 04.07.2016 12:14
quelle