For a mindmap-like learning app all elements (lines/text) are placed via different Components in the view. The data is fetched from a database and saved in an ObservableArray if it's in the view. There are two distinct kind of changes: 1. scrolling, the view changes and new data is fetched; 2. the user changes/adds/deletes an element in the view (no new data is fetched).
Is it better to "read" the observable to an ObjectArray iterate it with *ngFor, passing each Object to the matching Component or only pass an array of ids and letting each Component subscribe to the matching Element inside the ObservableArray?
So far I am using the first approach that I've seen in many tutorials and examples but using the second would make the user changes much easier and only the relevant elements would be change detected.