Ich habe einen Multi-Entry-Point-Webpack-Build und arbeite daran, die Artefaktgröße für die Produktion zu optimieren. webpack-bundle-analyzer
ergaben folgendes Bild:Warum wird die Abhängigkeit im Webpack-Artefakt oft wiederholt?
Es ist offensichtlich, dass die AtlasKit Abhängigkeiten einen großen Teil der Gesamt Artefakt Größe bilden. Insbesondere sehe ich, dass styled-components.es.js
viele Male wiederholt wird. Mehr noch, die gleiche Abhängigkeit ist auch in vendor.js
vorhanden, die selbst unter allen anderen Paketen geteilt wird.
Kann jemand erklären, warum styled-components.es.js
überall wiederholt wird und warum es nicht über einzelne Abhängigkeit in vendor.js
geteilt werden kann? Gibt es etwas, was ich tun kann, um Duplikate zu entfernen und nur von der einzelnen styled-components.es.js
Abhängigkeit in vendor.js
abhängen?
Ich fand es ein bisschen seltsam, dass AtlasKit Abhängigkeiten einen verschachtelten node_modules
Ordner haben, der im Paket enthalten ist. Warum ist dist
nicht genug? Vielleicht ist das ein Teil des Grundes, warum styled-components.es.js
nicht über vendor.js
geteilt werden kann?
Ich habe versucht, die Abhängigkeit manuell über webpack des IgnorePlugin (ähnlich moment.js
Positionen) aber nicht so weit, dies zu tun auszuschließen.
Alle Einsichten würden sehr geschätzt werden. Vielen Dank!
Haben Sie jemals eine Lösung dafür gefunden?Ich hatte das gleiche Problem und dachte, ich wäre einfach schlecht bei Webpack, aber es scheint, dass etwas seltsam konfiguriert ist mit @atlaskit –
@MitchLillie leider habe ich nicht und ich habe aufgehört mehr Zeit damit zu investieren. Sollte ich jedoch jemals wieder etwas Zeit finden, würde ich das gerne näher untersuchen. Ich glaube immer noch, dass es eine Lösung geben sollte. – tobi