babel-resolver v1.1.0
Babel Resolver

Resolve modules from any directory.
import User from '../../models/User';Becomes:
import User from 'models/User';Usage
In app/index.js:
require('babel-register')({
presets: ['es2015'], // required for 'import'
resolveModuleSource: require('babel-resolver')(__dirname)
});
require('./app');In app/app.js:
import User from 'models/User';
// => resolves: "app/models/User.js"This example uses Babel 6 and babel-register.
If you wish to define options in .babelrc, use the Babel Resolver Plugin instead.
Note: Run rm -rf ~/.babel.json if you're seeing errors.
Note2: Babel's resolveModuleSource is only called when you use import, not require.
Also, keep in mind that you must provide absolute directory paths to babel-resolver.
Resolving Multiple Directories
In app/index.js:
var path = require('path');
var localModulesDir = __dirname;
var anotherDirToCheck = path.resolve(__dirname, 'lib');
require('babel-register')({
presets: ['es2015'],
resolveModuleSource: require('babel-resolver')(localModulesDir, anotherDirToCheck)
});
require('./app');In app/app.js:
import User from 'models/User';
// => resolves: "app/models/User.js"
import somethingInLib from 'somethingInLib';
// => resolves: "app/lib/somethingInLib.js"Installation
npm i babel-resolver --save
rm -rf ~/.babel.jsonWhy not just set NODE_PATH?
While setting NODE_PATH=app is a perfectly valid solution, babel-resolver is more explicit and lets you avoid mucking around with environment variables.
License
MIT
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago