Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

151
Vistas
¿Cuál es una buena manera de manejar la paginación del lado del servidor y cargar los datos en el menú desplegable?

Estoy trabajando en una aplicación Angular. Obtiene datos de ASP.NET Core API, donde se implementa la paginación del lado del servidor. En la aplicación Angular he implementado el administrador de estado - NGXS.

Necesito obtener los datos de la API y mostrarlos dentro del menú desplegable y la tabla. Tengo algunas ideas sobre cómo hacerlo y me gustaría recibir algunos comentarios.

Así es como se ve una versión minificada de mi proyecto:

Ese es uno de mis StateModels, almacena una lista de servicios obtenidos (entidad) dentro de un contenedor

 export class ServicesStateModel { services: PaginatedList<Service[]>; }

Y esta es la Acción para obtener los servicios.

 @Action(FetchServices, { cancelUncompleted: true }) fetchServices({ getState, setState }: StateContext<ServicesStateModel>, { pageNumber, pageSize }: FetchServices): Observable<ApiResponsePaginated<Service[]>> { return this.servicesApiService.getServices(pageNumber, pageSize).pipe( tap((result: ApiResponsePaginated<Service[]>) => { const { data } = result; if (data) { const state = getState(); setState({ ...state, services: new PaginatedList<Service[]>(data.items,data.pageIndex, data.totalPages, data.totalCount), }); } }) ) }
  1. Cada vez que cambio la página dentro de la tabla, se envía la acción FetchServices, lo que da como resultado una nueva llamada API y su resultado se guarda en el modelo de estado y se muestra. ¿Es correcto o tal vez debería buscar más de una página a la vez? ¿Debo guardar las páginas ya mostradas dentro de un estado, de modo que cuando vuelva a la página anterior evite otra llamada API y la obtenga directamente del estado o es una exageración?

  2. Cada vez que abro un componente en el que se muestra la tabla sin paginación implementada, envío alguna acción Fetch. Da como resultado una llamada a la API en cada entrada de componente. ¿Debo evitar eso y almacenar los datos en el estado y llamar a la API solo en la actualización de la página?

Gracias por tu tiempo.

about 4 years ago · Santiago Gelvez
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda