lodash-webpack-plugin
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/lodash-webpack-plugin package

0.11.6 • Public • Published

lodash-webpack-plugin

Create smaller Lodash builds by replacing feature sets of modules with noop, identity, or simpler alternatives.

This plugin complements babel-plugin-lodash by shrinking its cherry-picked builds even further!

DISCLAIMER: Using this plugin without enabling the proper feature sets may cause lodash functions to behave in unexpected ways. Methods may appear to work, however they might return incorrect results.

Install

$ npm i --save lodash
$ npm i --save-dev lodash-webpack-plugin babel-core babel-loader babel-plugin-lodash babel-preset-env webpack

Example

demo

Usage

webpack.config.js
var LodashModuleReplacementPlugin = require('lodash-webpack-plugin');
var webpack = require('webpack');

module.exports = {
  'module': {
    'rules': [{
      'use': 'babel-loader',
      'test': /\.js$/,
      'exclude': /node_modules/,
      'options': {
        'plugins': ['lodash'],
        'presets': [['env', { 'modules': false, 'targets': { 'node': 4 } }]]
      }
    }]
  },
  'plugins': [
    new LodashModuleReplacementPlugin,
    new webpack.optimize.UglifyJsPlugin
  ]
};

Opt-in to features with an options object:

new LodashModuleReplacementPlugin({
  'collections': true,
  'paths': true
});

Feature Sets

The following features are removed by default (biggest savings first):

Feature Description
shorthands Iteratee shorthands for _.property, _.matches, & _.matchesProperty.
cloning Support “clone” methods & cloning source objects.
currying Support “curry” methods.
caching Caches for methods like _.cloneDeep, _.isEqual, & _.uniq.
collections Support objects in “Collection” methods.
exotics Support objects like buffers, maps, sets, symbols, typed arrays, etc.
guards Guards for host objects, sparse arrays, & other edge cases.
metadata Metadata to reduce wrapping of bound, curried, & partially applied functions.
(requires currying)
deburring Support deburring letters.
unicode Support Unicode symbols.
chaining Components to support chain sequences.
memoizing Support _.memoize & memoization.
coercions Support for coercing values to integers, numbers, & strings.
flattening Support “flatten” methods & flattening rest arguments.
paths Deep property path support for methods like _.get, _.has, & _.set.
placeholders Argument placeholder support for “bind”, “curry”, & “partial” methods.
(requires currying)

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
0.11.6121,972latest

Version History

VersionDownloads (Last 7 Days)Published
0.11.6121,972
0.11.59,631
0.11.41,835
0.11.31
0.11.256
0.11.12
0.11.02
0.10.7559
0.10.688
0.10.52
0.10.41
0.10.32
0.10.23
0.10.11
0.10.01
0.9.44
0.9.31
0.9.263
0.9.11
0.9.01
0.8.215
0.8.11
0.8.04
0.7.018
0.6.01
0.5.02
0.4.01
0.3.01
0.2.11
0.2.01
0.1.117
0.1.01

Package Sidebar

Install

npm i lodash-webpack-plugin

Weekly Downloads

134,289

Version

0.11.6

License

MIT

Unpacked Size

18.3 kB

Total Files

6

Last publish

Collaborators

  • mathias
  • jdalton
  • bnjmnt4n