Skip to content

Instantly share code, notes, and snippets.

@BTMPL
Forked from Eoksni/Build.md
Created September 20, 2017 12:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save BTMPL/d48427f3a17d15d56bed8623ce1a4d4f to your computer and use it in GitHub Desktop.
Save BTMPL/d48427f3a17d15d56bed8623ce1a4d4f 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