You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Resolve the path of a package regardless of it having an entry point
Some packages like CLI tools and grunt tasks don't have a entry point, like "main": "foo.js" in package.json, resulting in them not being resolvable by require.resolve(). Unlike require.resolve(), this module also resolves packages without an entry point, returns undefined instead of throwing when the module can't be found, and resolves from process.cwd() instead __dirname by default.
Install
$ npm install resolve-pkg
Usage
constresolvePkg=require('resolve-pkg');// $ npm install --save-dev grunt-svgminresolvePkg('grunt-svgmin/tasks',{cwd: __dirname});//=> '/Users/sindresorhus/unicorn/node_modules/grunt-svgmin/tasks'// Fails here as Grunt tasks usually don't have a defined main entry pointrequire.resolve('grunt-svgmin/tasks');//=> Error: Cannot find module 'grunt-svgmin'
API
resolvePkg(moduleId, [options])
moduleId
Type: string
What you would use in require().
options
cwd
Type: string
Default: process.cwd()
Directory to resolve from.
Related
resolve-cwd - Resolve the path of a module from the current working directory
resolve-from - Resolve the path of a module from a given path
resolve-global - Resolve the path of a globally installed module