esm-module-paths
v1.1.1
Published
Returns dirname and filename for ESM modules in node
Downloads
9,675
Readme
esm-module-paths
ESM modules don't allow to use __dirname
and __filename
do determine a .js
file's location.
Instead, you need to copy/paste multiple lines and expressions each time to achieve the same.
This package makes this a bit easier.
Usage
Imagine a file in ./your/path/index.js
import { getModulePaths } from "esm-module-paths";
const { __dirname, __filename } = getModulePaths();
console.log(__dirname); // /your/path
console.log(__filename); // /your/path/index.js
For convenience reasons, the library also exports __filename
and __dirname
as functions, which can be used independently.
import { __filename, __dirname } from "esm-module-paths";
console.log(__dirname()); // /your/path
console.log(__filename()); // /your/path/index.js
Since __dirname
and __filename
being functions may be confusing to some, especially since those used to be variables, this package also exports aliased, more descriptive versions of each function.
import { getFileName, getDirName } from "esm-module-paths";
console.log(getDirName()); // /your/path
console.log(getFileName()); // /your/path/index.js
Installation
npm install esm-module-paths
or
yarn add esm-module-paths