Skip to content

ltchronus/babel-plugin-module-alias

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

babel-plugin-module-alias Build Status Coverage Status

A babel plugin to rewrite (map, alias, resolve) directories as different directories during the Babel process. It's particularly useful when you have files you don't want to use with relative paths (especially in big projects).

Description

Instead of using relative paths in your project, you'll be able to use an alias. Here an simple example:

// Instead of using this;
import MyUtilFn from '../../../../utils/MyUtilFn';
// Use that:
import MyUtilFn from 'utils/MyUtilFn';

With this plugin, you'll be able to map files or directories to the path you want.

Note: It also work for require().

Note 2: You can use the npm: prefix in your plugin configuration to map a node module.

Usage

Install the plugin

$ npm install --save babel babel-plugin-module-alias

Specify the plugin in your .babelrc with the custom mapping.

{
  "plugins": [
    ["module-alias", [
      { "src": "./src/utils", "expose": "utils" },
      { "src": "./src/components", "expose": "awesome/components" },
      { "src": "npm:lodash", "expose": "underscore" }
    ]]
  ]
}

If you're using eslint-plugin-import, you should use eslint-import-resolver-babel-module-alias to avoid having false errors.

License

MIT, see LICENSE.md for details.

About

Rewrite/Resolve require/import paths to different values in Babel.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%