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

398
Views
NGRX: cómo llamar a los selectores de fábrica desde otros selectores

Dado que NGRX desaprobó los selectores con accesorios en la versión 11 y el método esperado para usar propiedades es crear selectores de fábrica,

  • ¿Cómo puede anidar selectores o llamar a uno de otro y pasar el estado entre ellos?

Previo al cambio, con los siguientes dos selectores

 export const selector1 = createSelector( state, ( state: FormState, props: {id: string} ) => { // Return items whose parent match the given id return state.items.filter( item => item.parentId === props.id); } ); export const selector2 = createSelector( state ( state, FormState, props: { id: string} ) => { return state.notes.filter( note => note.parentId === props.id); } )

podrías llamar a uno de los selectores desde otro, con lo siguiente

 export const selector3 = createSelector( state, ( state: FormState, props: {id: string} ) => { // get notes by using an existing selector and passing the state & properties const notes = selector2({ storeName: state}, props) // do some more logic based on the nested call to a selector ... } );

ahora que los selectores de fábrica tienen el formato esperado cuando se trata de propiedades, los selectores ahora tienen el siguiente aspecto

 export const selector1 = (id: string) => createSelector( state, ( state: FormState ) => { // Return items whose parent match the given id return state.items.filter( item => item.parentId === id); } ); export const selector2 = (id: string) => createSelector( state ( state, FormState ) => { return state.notes.filter( note => note.parentId === id); } )
  • dados los selectores de fábrica, ¿hay alguna manera de llamar al selector2 desde dentro del selector1
  • si es así, ¿cómo se pasa el estado al selector anidado?

por ejemplo

 export const selector3 = (id: string) => createSelector( state, ( state: FormState ) => { // how is the `state` passed to the nested selector call below? const notes = selector2( id) } );

Gracias.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

La función createSelector puede recibir otros selectores como argumentos.

Así que podrías hacer:

 export const selector3 = (id: string) => createSelector( state, select2(id), (state: FormState, filteredNotes ) => { const notes = filteredNotes; } );
over 4 years ago · Santiago Trujillo 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!