Makes file imported by relative path overridable from within customization folder
This is for webpack 2.x, for webpack 1.x see this version.
npm install --save-dev customization-resolver-webpack-plugin
import path from 'path';
import CustomizationResolverPlugin from 'customization-resolver-webpack-plugin';
let dir_base = path.resolve(__dirname, '../');
let dir_customize = path.resolve(dir_base, '../../customizedSrc/');
let dir_src = path.resolve(dir_base, 'src/');
let webpackConfig = {
entry:'...',
target:'web',
// other webpack config stuff
resolve: {
modules: [
dir_customize,
dir_src,
],
plugins: [
new CustomizationResolverPlugin({
customizationDir: dir_customize,
sourceDir: dir_src
})
],
},
}
sourceDir
required String: absolute path to source directory, containing files which can be overridencustomizationDir
required String: absolute path to customization directory, containing files which can override source filesexcludePath
String/RegEx: RegEx which matchespath
property of request object which should not be resolved, defaults to 'node_modules'excludeRequest
String/RegEx: RegEx which matchesrequest
property of request object which should not be resolved, defaults to 'node_modules'jsFileExtension
String: JS file extension (with dot) which gets added to file names without file extension, defaults to '.js'isCompleteFileName
String/RegEx: RegEx which matchesrequest
property of request object to identify filenames with a valid extension. E.g./\.scss$/
to match SCSS files.
Say you start your bundling process with webpack ./app.js
. Use
NODE_DEBUG=customization-resolver-webpack-plugin webpack ./app.js
to see
debug output of this plugin.
MIT ©