externalize-relative-module-loader

undefined

externalize-relative-module-loader

This loader aims to solve cases where a library makes an import from a specific file:

import map from 'lodash/map';

and app (that uses that lib) strives to put this dependency in its externals.

Install

npm install --save externalize-relative-module-loader

Usage

module.exports = {
  module: {
    rules: [
      {
        test: path.resolve('node_modules/lodash'),
        use: {
          loader: 'externalize-relative-module-loader'
        }
      }
    ]
  }
}

Assumptions

  • Bundle is a library (usage of output.libraryTarget).
  • Dep is included in externals.
  • Dep has the same exported property like the name of the imported file (for instance, map is the intended property in lodash/map).
  • Imported file is .js file - this one can be solved, PR is welcomed.

Repository

https://github.com/wix/externalize-relative-module-loader


公众号

欢迎 JavaScript 爱好者