es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo solucionar las dependencias circulares en React, con bibliotecas personalizadas de terceros?

Construí un paquete npm personalizado que exporta el componente principal de mi proyecto.

Ese componente principal también contiene bibliotecas de terceros.

Cuando ejecuto yarn build dentro del paquete, obtengo una advertencia: Dependencias circulares.

Lo interesante es que cuando ejecuto build dentro del proyecto donde vive ese componente, no obtengo Dependencias circulares.

Esos errores solo aparecen cuando ejecuto la construcción como parte del paquete, y estoy usando ROLLUP para empaquetar el paquete.

Alrededor de 50 – Dependencias circulares.

node_modules/@bestowinc/enroll-sdk-core/build/lib/answer.js ->
node_modules/@bestowinc/enroll-sdk-core/build/lib/question-common.js
-> node_modules/@bestowinc/enroll-sdk-core/build/lib/answer.js node_modules/@bestowinc/enroll-sdk-core/build/lib/answer.js ->
node_modules/@bestowinc/enroll-sdk-core/build/lib/question-common.js
-> /Users/nikolatrajkovic/Desktop/enrollment-client/src/node_modules/@bestowinc/enroll-sdk-core/build/lib/answer.js?commonjs-proxy
-> node_modules/@bestowinc/enroll-sdk-core/build/lib/answer.js utils/logger.ts ->
utils/metadata/index.ts ->
utils/metadata/segmentIdentifyHelper.ts -> utils/logger.ts …y 41 más

No tengo idea de por qué está sucediendo esto, solo quiero entender por qué 🙂

¿Alguien ha tenido un problema similar?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece que hay dependencias circulares entre el componente principal y las bibliotecas de terceros que incluye. Esto significa que el componente depende de las bibliotecas y las bibliotecas dependen del componente, creando un bucle.

    El hecho de que la advertencia solo aparezca al construir el paquete con ROLLUP podría significar que hay algunas diferencias en la forma en que se maneja el proceso de construcción entre el paquete y el proyecto. También podría estar relacionado con la configuración específica de ROLLUP para el paquete.

    Para resolver este problema, podrías intentar refactorizar tu código para eliminar las dependencias circulares. Esto podría significar descomponer el componente y las bibliotecas en módulos más pequeños y centrados, o replantear la arquitectura general de tu paquete.

    También podrías intentar usar una herramienta de empaquetado o una configuración diferente que maneje las dependencias circulares de manera diferente o más eficiente.

    Finalmente, podría ser útil investigar las causas específicas de la advertencia de dependencias circulares, analizando las dependencias e importaciones de tu código y buscando posibles bucles.

Comments are closed.