1

enter image description hereWebpack, wie kann man ein Modul in seine eigene Build-Schicht einbauen?

Mit Standard-Build-Einstellungen I erhalten folgenden Schichten aufbauen: (X + A), (Y + A + B), (Z + B).

Ich möchte: (X + A), (Y + A), Z, B

B sollte nur einmal geladen werden, wenn wir Y- und Z-Module zu fragen.

Ich fand CommonsChunkPlugin, aber ich kann es nicht richtig konfigurieren.

var webpack = require("webpack"); 
var CommonsPlugin = new require("webpack/lib/optimize/CommonsChunkPlugin"); 

module.exports = { 
    entry: { 
     main: "./main" 
    }, 
    resolve: { 
     modulesDirectories: [ 
      "." 
     ] 
    }, 
    output: { 
     publicPath: "js/", 
     filename: "[name].builded.js" 
    }, 
    plugins: [ 
      new CommonsPlugin({ 
      // What should I write here? 
      }) 
    ] 
}; 

Antwort

0

Sieht aus wie Sie B als separate Einstiegspunkt hinzufügen sollte:

entry: { 
    main: "./main", 
    Bentry: ["B"] 
}, 

und fügen CommonsChunkPlugin in plugins Abschnitt:

new webpack.optimize.CommonsChunkPlugin('Bentry', 'B.js'), 
+1

versuchte, bekam eine Fehlermeldung „eine Abhängigkeit zu einem Eintrittspunkt ist nicht erlaubt " –

+1

Sorry,' Bentry' muss ein Array sein. Bearbeitete meine Antwort. –

+1

jetzt habe ich gemeinsamen Brocken B, aber ich habe Module (Y + A + B), (Z + B) und haben keinen Vorteil von diesem gemeinsamen Brocken. Ich muss den Code von Modul B von den übergeordneten Build-Blöcken sowehow ausschließen –

Verwandte Themen