En una gran aplicación de reacción mecanografiada con paquete web, tenemos un módulo común con un montón de utilidades, clases, tipos, etc. Este módulo está configurado con un archivo de índice que reexporta todos los módulos individuales. Al igual que
export * from './a'; export * from './b'; export * from './c'; ... Algunos de estos módulos individuales también usan a archivo de índice similar para volver a exportar cosas, por lo que el árbol de exportación tiene varias capas de profundidad. Probablemente involucre miles de artículos exportados.
El problema es que cuando se importa una función simple de este módulo ui común, también evalúa TODOS los módulos individuales. Algunos de estos módulos individuales, por ejemplo, tienen exportaciones con constructores costosos export const classA = new ClassA() .
Este módulo común está profundamente arraigado a través de múltiples aplicaciones que son bastante grandes (piense en cientos de miles de líneas de código). Cada archivo individual en nuestras aplicaciones puede importar como máximo 3 o 4 elementos de este módulo común.
¿Hay alguna manera de limpiar esto para que sea menos derrochador sin refactorizar todas las aplicaciones? Preferiblemente sin tener que actualizar todas nuestras declaraciones de importación individuales en todas las aplicaciones.