Update page.ts

This commit is contained in:
Zoe Roux 2020-10-06 12:43:24 +02:00
parent 50cd5f55ed
commit 3338be9e24

View File

@ -2,11 +2,12 @@ import {HttpClient} from "@angular/common/http";
export class Page<T>
{
this: string
next: string
first: string
count: number
items: T[]
this: string;
next: string;
first: string;
count: number;
items: T[];
private _isLoading: boolean = false;
constructor(init?:Partial<Page<T>>)
{
@ -15,17 +16,20 @@ export class Page<T>
loadNext(client: HttpClient)
{
if (this.next == null)
if (this.next == null || this._isLoading)
return;
this._isLoading = true;
client.get<Page<T>>(this.next).subscribe(x =>
{
this.items.push(...x.items);
this.count += x.count;
this.next = x.next;
this.this = x.this;
this._isLoading = false;
});
}
changeType(type: string)
{
return this.first.replace(/\/\w*($|\?)/, `/${type}$1`)