2017-04-07 1 views
0

Ich habe eine vendor/index.js Datei erstellt, in die ich z. Reagieren. Diese Datei ist mein "Vendor" -Einstiegspunkt.Webpack 2 Lieferantenpaket

Das Ergebnis ist eine nette vendor.js mit den Sachen, die ich erwartet habe. Mein Problem ist, dass ich die gleichen Module in meinem main.js Bundle habe.

Also habe ich die Verkäufer Zeug zweimal, einmal in vendor.js und einmal in main.js.

Wie kann ich das verhindern?

entry: { 
    main: path.join(__dirname, "browser.jsx"), 
    vendor: path.join(__dirname, "vendor", "index.js") 
    }, 

Antwort

0

Sie wollen die CommonsChunkPlugin verwenden, um alles in dem Kreditorenbündel zu setzen, die gemeinsam genutzt wird. Jedes Modul, das auf ein freigegebenes Modul verweist, verweist auf das Paket vendor. Es muss daher vor dem eigentlichen Paket enthalten sein.

plugins: [ 
    new webpack.optimize.CommonsChunkPlugin({ 
    name: 'vendor' 
    }) 
] 

Dieser genaue Anwendungsfall ist in mehr Einzelheiten in Guides: Code Splitting - Libraries beschrieben.