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

203
Vistas
Reseleccionar: ¿cómo pasar un resultado de un selector a otro como argumento antes de la función combinadora?

Tengo un selector que se ve así:

 export const shipmentsRejectedSelector: ( state: AppStateType, departmentIds: List<number>, currentDate: DateTime, toDate: DateTime ) => List<Shipment> = createImmutableEqualSelector( shipmentsByDepartmentIdsAndDate, packageEvents, (shipments, events) => shipments .valueSeq() .filter(s => s.get('state') == EventType.REJECTED)) ?.toList() || List() )

Dado que packageEvents devuelve todos los events independientemente de los envíos de los que forme parte, me gustaría devolver solo los eventos que forman parte de los shipmentsByDepartmentIdsAndDate devueltos por el selector shippingsByDepartmentIdsAndDate. ¿Cómo puedo pasar los ID de shipmentIds a un nuevo selector que obtenga solo los eventos que tienen los ID de shipmentIds que estoy pasando? Algo como esto por ejemplo:

 export const shipmentsRejectedSelector: ( state: AppStateType, departmentIds: List<number>, currentDate: DateTime, toDate: DateTime ) => List<Shipment> = createImmutableEqualSelector( shipmentsByDepartmentIdsAndDate, shipments => packageEvents(shipments), (shipments, events) => shipments .valueSeq() .filter(s => s.get('state') == EventType.REJECTED)) ?.toList() || List() )
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

En su código, no ha mostrado cómo está utilizando el objeto de event en resultFunc (combinador). Así que supongo que desea agregar eventos a los envíos antes de filtrarlos.

Una forma podría ser usar los eventos del packageEvents en el combinador:

 const shipmentsByDepartmentIdsAndDate = ...; const shipmentWithPackageEvents = createSelector(shipments, (shipments)=>{//return shipments along with the corresponding events}); const shipmentsRejectedSelector = createSelector( shipmentsByDepartmentIdsAndDate, (shipments) => shipmentWithPackageEvents(shipments).valueSeq() .filter(s => s.get('state') == EventType.REJECTED)) ?.toList() || List() )

O podemos usar directamente shippingWithPackageEvents:

 const shipmentsByDepartmentIdsAndDate = ...; const shipmentWithPackageEvents = createSelector(shipments, (shipments)=>{//return shipments along with the corresponding events}); const shipmentsRejectedSelector = createSelector( shipmentWithPackageEvents, (shipments) => shipments.valueSeq() .filter(s => s.get('state') == EventType.REJECTED)) ?.toList() || List() )
about 4 years ago · Juan Pablo Isaza Denunciar
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