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

189
Vistas
Integrar Child con Parent Components usando React & Saga

Por lo tanto, el requisito es desacoplar tanto como sea posible para que al eliminar cualquier componente secundario integrado, el elemento principal no se bloquee. La idea es crear un componente principal con middleware de saga raíz que tenga encabezados, pies de página, barras laterales, realice la autenticación y autorización y ejecute las sagas raíz. El componente principal integrará componentes/proyectos secundarios independientes externos que tienen su propio conjunto de llamadas Sagas y Api.

Lo que quiero lograr Para desacoplar lo siguiente y crear ChildOne y ChildTwo en proyectos separados y finalmente Parent en el proyecto principal como un plugin o una library pero nuevamente estos plugins o libraries tendrán sus propias llamadas Saga y Api.

Razón para desvincularse La compañía tiene más de 30 proyectos nuevos y todos estos están siendo manejados por diferentes devops. Por lo tanto, estamos tratando de integrar todo el proyecto Parent al proyecto principal con la intención de que si un proyecto se rompe, los otros continuarán ejecutándose y también el Parent no necesitará ajustarse si integramos o eliminamos cualquier componente secundario. Al igual que en la siguiente estructura, si eliminamos el componente ChildOne , el proyecto se romperá porque la ruta, es decir, "../components/store/childone/saga" no será válida.

Me pregunto si esto se puede lograr usando injectReducer({ key: 'cartContainer', reducer }) & injectSaga({ key: 'cartContainer', saga }); pero nuevamente, si puede proporcionar una idea sobre cómo usar esto y dónde usarlo, ya sea en Parent o Children y cómo integrar a todos los children con el Parent

Soy bastante nuevo en React World, por lo que agradecería sus comentarios. Gracias.

El proyecto Actual tiene la siguiente estructura.

RootSaga.js

 import ParentSaga from "../components/store/parent/saga"
import ChildOneSaga from "../components/store/childone/saga"
import ChildTwoSaga from "../components/store/childtwo/saga"

export default function* rootSaga() {
 yield spawn([
 ParentSaga(),
 ChildOneSaga(),
 ChildTwoSaga()
 ])
}

Aquí hay un ejemplo de rutas.js

 import Parent from "../components/parent/index"
import ChildOne from "../components/childOne/index"
import ChildTwo from "../components/childOne/index""

const Routes = [

 { path: "/", component: Parent },
 { path: "/child-one", component: ChildOne },
 { path: "/child-two", component: ChildTwo }

Y este es mi index.js

 import rootReducer from "./reducers"
import rootSaga from "./sagas"
const sagaMiddleware = createSagaMiddleware()

const store = createStore(
 rootReducer,
 composeEnhancers(applyMiddleware(sagaMiddleware))
)
sagaMiddleware.run(rootSaga)

almost 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Si bien no es una respuesta directa a su pregunta:

Primero, parece que el código Redux que está escribiendo allí está muy desactualizado. Debería usar nuestro paquete oficial de Redux Toolkit para escribir la lógica de Redux, en lugar de la obsoleta API createStore original y la lógica reductora escrita a mano.

Llevamos años desaconsejando el uso de sagas en casi todos los casos. Esto es aún más cierto hoy en día: RTK Query resuelve el caso de uso de obtención de datos, y el nuevo middleware RTK "oyente" hace básicamente todo lo que las sagas pueden hacer con una API más simple, un tamaño de paquete más pequeño y una mejor compatibilidad con TS.

Consulte estas páginas de documentos y publicaciones para obtener más detalles:

  • https://redux.js.org/introduction/por qué-rtk-is-redux-today
  • https://redux.js.org/tutorials/essentials/part-2-app-structure
  • https://redux.js.org/tutorials/fundamentals/part-8-modern-redux
  • https://redux-toolkit.js.org/api/createListenerMiddleware
  • https://blog.isquaredsoftware.com/2022/06/presentaciones-modernas-redux-rtk/
  • https://blog.isquaredsoftware.com/2022/05/presentations-evolution-redux-async-logic/

Y finalmente, también tenemos una página de documentos sobre cómo administrar la división de código:

  • https://redux.js.org/usage/code-splitting
almost 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