Skip to content

Instantly share code, notes, and snippets.

@Eoksni
Forked from robertknight/Build.md
Last active May 21, 2022 07:25
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save Eoksni/83d1f1559e0ec00d0e89c33a6d763049 to your computer and use it in GitHub Desktop.
Save Eoksni/83d1f1559e0ec00d0e89c33a6d763049 to your computer and use it in GitHub Desktop.
Minimal Webpack DllPlugin example
var square = require('./vendor');
console.log(square(7));
var webpack = require('webpack');
var path = require('path');
module.exports = {
entry: {
app: ['./app'],
},
output: {
filename: 'app.bundle.js',
path: path.resolve(__dirname, 'build'),
},
plugins: [new webpack.DllReferencePlugin({
context: '.',
manifest: require('./build/vendor-manifest.json'),
})]
};

Compile with:

webpack --config vendor.webpack.config.js
webpack --config app.webpack.config.js

Use with the following index.html

<script src="build/vendor.bundle.js"></script>
<script src="build/app.bundle.js"></script>
function square(n) {
return n*n;
}
module.exports = square;
var webpack = require('webpack');
var path = require('path');
module.exports = {
entry: {
vendor: ['./vendor'],
},
output: {
filename: 'vendor.bundle.js',
path: path.resolve(__dirname, 'build'),
library: 'vendor_lib',
},
plugins: [new webpack.DllPlugin({
name: 'vendor_lib',
path: 'build/vendor-manifest.json',
})]
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment