Webpack describe una función de entrada principal múltiple que parece hacer exactamente esto, agrupa varias bibliotecas en un solo archivo. El problema es que cuando cargo ese archivo solo está disponible la última biblioteca de la lista.
He creado una pequeña demostración en github .
Hay 2 bibliotecas, cada una de las cuales exporta un solo símbolo, solo se puede acceder a lib2.d2 desde test.html que carga el JS incluido. Si mira en el archivo del paquete, puede ver el código de lib1 , pero no se exporta de ninguna manera que pueda encontrar.
La configuración del paquete web está debajo. Sospecho que el problema es que no hay forma de proporcionar 2 nombres de biblioteca cuando solo hay salida, por lo que el último sobrescribe los anteriores.
const path = require('path'); module.exports = { entry: ['./js/lib1.js', './js/lib2.js'], module: { rules: [ { test: /\.js$/, use: 'babel-loader', exclude: /node_modules/, }, ], }, resolve: { extensions: ['.tsx', '.ts', '.js'], }, output: { library: { name: 'MyLibrary', type: 'umd', }, filename: 'lib.js', path: path.resolve(__dirname, 'dist'), }, "optimization": { "minimize": false, usedExports: true, }, mode: "development", }; Si tienes curiosidad por qué querría hacer esto, estoy haciendo algo de desarrollo en wix.com. La única forma de enviar archivos JS a su servidor es copiar y pegar uno a la vez. Agrupar un montón de cosas en un solo archivo me ahorrará algo de dolor. Mi solución actual es generar varios archivos y luego unirlos todos con algo export const exportLib1 = lib1 para cada uno. Eso me da un archivo JS que puedo importar y acceder a cada uno, pero debe haber una manera más fácil.