Have ideas to improve npm?Join in the discussion! »

    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)

    Install

    npm i lodash-webpack-plugin

    DownloadsWeekly Downloads

    214,413

    Version

    0.11.6

    License

    MIT

    Unpacked Size

    18.3 kB

    Total Files

    6

    Last publish

    Collaborators

    • avatar
    • avatar
    • avatar