merge-loader
v0.0.1
Published
A webpack loader to merge modules
Downloads
3
Readme
merge-loader
A webpack loader to merge modules
Installation
npm i merge-loader
Usage
Example
webpack.config.js
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.join(__dirname, 'dist'),
filename: 'index.js'
},
module: {
rules: [
{
test: /config.js$/,
use: [
{
loader: 'merge-loader',
options: {
pattern: [
`env/${process.env.NODE_ENV}/config.*`
]
}
}
]
}
]
}
};
src/config.js
module.exports = {
helloWorld: 'Hello World'
};
src/env/production/config.js
module.exports = {
environment: function() {
return 'Production';
}
};
src/index.js
const { helloWorld, environment } = require('./config.js');
console.log(helloWorld); // Hello World
console.log(environment()); // Production
The example assumes that
process.env.NODE_ENV
is set toproduction
. This can be achieved with cross-env when issued as a shell command:
cross-env NODE_ENV=production webpack
Options
| Param | Type | Description | | -------- | -------------------------------- | -------------------------------- | | pattern | string|array | Provide one or more glob patterns to match files that should be merged in. See glob for more info. | glob | object | Options passed to glob. | merge | string | Specify a module used for merging. Defaults to merge-loader's own implementation at ./lib/merge`.