babel-plugin-transform-dirname-filename
babel-plugin-transform-dirname-filename copied to clipboard
Babel plugin that rewrites `__dirname` and `__filename` to static values
babel-plugin-transform-dirname-filename
Babel plugin that rewrites __dirname and __filename to static values.
Example
Source file t.js:
console.log(__dirname);
console.log(__filename);
Execute normally
$ node t.js
/path/to
/path/to/t.js
Before
$ babel --out-file build/t.js t.js
$ node build/t.js
/path/to/build
/path/to/build/t.js
Notice how the build directory is part of the paths, which is not what we
want.
After
$ babel --out-file build/t.js --plugins transform-dirname-filename t.js
$ node build/t.js
/path/to
/path/to/t.js
So even though the generated file is a build/t.js, the __dirname and
__filename values will still reference the source file!
Installation
$ npm install babel-plugin-transform-dirname-filename --save-dev
Usage
Via .babelrc (Recommended)
.babelrc
{
"plugins": ["transform-dirname-filename"]
}
Via CLI
$ babel --plugins transform-dirname-filename script.js
Via Node API
require("babel-core").transform("code", {
plugins: ["transform-dirname-filename"]
});