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

405
Vistas
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 Respuestas
Responde la pregunta

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 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