$ cnpm install caller-path
Get the path of the caller function
Important: You have to use 'use strict';
in your code for this module to work correctly, or make sure the module is an ESM module, which is implicitly strict.
$ npm install caller-path
// foo.js
const callerPath = require('caller-path');
module.exports = () => {
console.log(callerPath());
//=> '/Users/sindresorhus/dev/unicorn/bar.js'
}
// bar.js
const foo = require('./foo');
foo();
If the caller's callsite object getFileName
was not defined for some reason, it will return undefined
.
Get the path of the caller function.
Type: number
Default: 0
The caller path depth, meaning how many levels we follow back on the stack trace.
For example:
// foo.js
const callerPath = require('caller-path');
module.exports = () => {
console.log(callerPath());
//=> '/Users/sindresorhus/dev/unicorn/foobar.js'
console.log(callerPath({depth: 1}));
//=> '/Users/sindresorhus/dev/unicorn/bar.js'
console.log(callerPath({depth: 2}));
//=> '/Users/sindresorhus/dev/unicorn/foo.js'
}
// bar.js
const foo = require('./foo');
module.exports = () => {
foo();
}
// foobar.js
const bar = require('./bar');
bar();
Copyright 2013 - present © cnpmjs.org