safe-umd-webpack-plugin
Webpack plugin to handle optional dependencies safely when using libraryTarget: umd
.
When to use
When using umd
as a libraryTarget with config like :
moduleexports = entry: './src/index.js' output: library: 'my' 'module' libraryTarget: 'umd' filename: 'bundle.js' externals: 'my-ext-module': commonjs: 'my-ext-module' commonjs2: 'my-ext-module' amd: 'my-ext-module' root: 'my' 'ext' 'module' ;
You can't use optional dependencies for a root (namespace) because of the generated code like :
root"my" = root"my" || {} root"my""module" = ;
This plugin replace code above to safely access the namespace with code like :
root"my" = root"my" || {} root"my""module" = ;
How to use
Install
npm install safe-umd-webpack-plugin --save-dev
Config
// webpack.config.js var SafeUmdPlugin = ; // ...moduleexports = // ... plugins: //...