2017-05-15 2 views

Antwort

0

Das liegt an der Konfiguration, die Sie dem Webpack geben. Wenn Sie zwei Einstiegspunkte haben, die nicht miteinander kommunizieren und beide jquery importieren und reagieren, ist die Antwort ja, Sie haben diese Bibliotheken in beiden Bundles. Sie können jedoch problemlos ein Lieferantenbündel mit der CommonsChunkPlugin erstellen. Hier ist ein Beispiel dafür, wie Anbieter Module in einem getrennten Klumpen zu setzen, die von beiden Einstiegspunkte verbraucht wird:

new webpack.optimize.CommonsChunkPlugin({ 
    name: "vendor", 
    minChunks: function (module) { 
    return module.context && module.context.indexOf("node_modules") !== -1; 
    } 
}) 

Auf diese Weise werden alle Module innerhalb node_modules wird in einem Bündel genannt Anbieter exportiert werden.

+0

Vielen Dank für Ihren Kommentar. Nehmen wir an, ich habe keine Kontrolle über Bundle 1. Mein einziger Einstiegspunkt ist das Webpack-App-Bundle. – Matt

+0

Wenn Sie keine Kontrolle über das erste Paket haben, weiß Webpack nicht, dass einige Anbieter bereits im ersten Paket enthalten sind. Was ich vorschlagen kann, ist die Verwendung des 'expose-loader' ([link] (https://github.com/webpack-contrib/expose-loader)) innerhalb des ** ersten Pakets ** und die Offenlegung der Anbieter, die Sie benötigen Fensterobjekt Innerhalb des zweiten Pakets können Sie die Optionen "externals" ([link] (https://webpack.js.org/configuration/externals/#externals)) in Ihrem ** zweiten Paket verwenden ** – Ematipico

+0

http://stackoverflow.com/questions/42248952/using-react-components-bundled-with-webpack-causes-duplication-of-submodules <- Ich denke, dieser Beitrag beantwortet meine Frage. Wenn ein Modul bereits mit dem Webpack gebündelt ist, gibt es meines Erachtens keine Möglichkeit, es zu entbündeln, um Module zu deduplizieren. – Matt

Verwandte Themen