Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

197
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!