I need to change the value of params for pageNumber and titulo when i call one of the functions below... but when i call the functions these params remains the same, example
http://miurl.com/jsonapi/views/busqueda_avanzada/informes?page=${this.pageNumber}&views-filter[titulo]=${this.titulo}; //pageNumber returns 0 which is the initial value, but when i call getPage() function still returns 0 when it should return 1 and then 2, for each call.
The idea is to create a search filter with Angular. Hope you can give me some clue of what im doing wrong! Thanks
import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
export interface InformesCounter {
data: any;
meta: any;
count: any;
attributes: any;
links: any;
next: any;
href: any;
titulo: any;
}
@Injectable({
providedIn: 'root'
})
export class BuscadorService {
pageNumber: any = 0;
titulo: any = '';
informesNodes =`http://miurl.com/jsonapi/views/busqueda_avanzada/informes?page=${this.pageNumber}&views-filter[titulo]=${this.titulo}`;
constructor(private http: HttpClient) { }
getNodes(): Observable<InformesCounter> {
this.pageNumber = 1;
return this.http.get<InformesCounter>(`${this.informesNodes}`);
}
getFiltered(titulo: any): Observable<InformesCounter> {
this.titulo = titulo;
this.pageNumber = 1;
return this.http.get<InformesCounter>(`${this.informesNodes}`);
}
getPage(): Observable<InformesCounter> {
this.pageNumber = this.pageNumber + 1;
return this.http.get<InformesCounter>(`${this.informesNodes}`);
}
ungetPage(): Observable<InformesCounter> {
this.pageNumber = this.pageNumber - 1;
return this.http.get<InformesCounter>(`${this.informesNodes}`);
}
}