Basically I'm trying to inflate BehaviorSubject<[]>
with array of data which will be loaded in chunks.
BehaviorSubject<[]>
will be added with new chunk of data (like Array.push
) but I don't want to use another array to store and add to BehaviorSubject.next
because this will cause rendering to take too long as the data grow over time.
Any suggestion?
You can use getValue()
method to achieve what you want to do.
Example:
data = new BehaviorSubject<any[]>([]);
addData(foo:any):void{
// I'm using concat here to avoid using an intermediate array (push doesn't return the result array, concat does).
this.data.next(this.data.getValue().concat([foo]));
}