• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

234
Views
cambiar el valor de los parámetros al llamar a la función angular

Necesito cambiar el valor de los parámetros para el número de página y el título cuando llamo a una de las funciones a continuación... pero cuando llamo a las funciones, estos parámetros siguen siendo los mismos, ejemplo

http://miurl.com/jsonapi/views/busqueda_avanzada/informes?page=${this.pageNumber}&views-filter[titulo]=${this.titulo} ; //pageNumber devuelve 0, que es el valor inicial, pero cuando llamo a la función getPage() todavía devuelve 0 cuando debería devolver 1 y luego 2, para cada llamada. La idea es crear un filtro de búsqueda con Angular. ¡Espero que puedas darme alguna pista de lo que estoy haciendo mal! Gracias

 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}`); } }
about 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Su cadena de plantilla de informesNodes solo se evalúa una vez, cuando se crea la instancia de clase. No se actualiza automáticamente con nueva información.

Una solución fácil sería reemplazarlo con un captador y el resto de su código puede permanecer como está:

 get informesNodes() { return `http://miurl.com/jsonapi/views/busqueda_avanzada/informes?page=${this.pageNumber}&views-filter[titulo]=${this.titulo}`; }
about 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error