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)

      This feature is exclusive to Teams

      Illustration of wombats

      The package file explorer is only available for Teams at the moment.

      We may support exploring this package in the future. Check back soon.

      Install

      npm i lodash-webpack-plugin

      DownloadsWeekly Downloads

      182,392

      Version

      0.11.6

      License

      MIT

      Unpacked Size

      18.3 kB

      Total Files

      6

      Last publish

      Collaborators

      • mathias
      • jdalton
      • bnjmnt4n