| # resolve-from [](https://travis-ci.org/sindresorhus/resolve-from) |
| |
| > Resolve the path of a module like [`require.resolve()`](https://nodejs.org/api/globals.html#globals_require_resolve) but from a given path |
| |
| |
| ## Install |
| |
| ``` |
| $ npm install resolve-from |
| ``` |
| |
| |
| ## Usage |
| |
| ```js |
| const resolveFrom = require('resolve-from'); |
| |
| // There is a file at `./foo/bar.js` |
| |
| resolveFrom('foo', './bar'); |
| //=> '/Users/sindresorhus/dev/test/foo/bar.js' |
| ``` |
| |
| |
| ## API |
| |
| ### resolveFrom(fromDir, moduleId) |
| |
| Like `require()`, throws when the module can't be found. |
| |
| ### resolveFrom.silent(fromDir, moduleId) |
| |
| Returns `null` instead of throwing when the module can't be found. |
| |
| #### fromDir |
| |
| Type: `string` |
| |
| Directory to resolve from. |
| |
| #### moduleId |
| |
| Type: `string` |
| |
| What you would use in `require()`. |
| |
| |
| ## Tip |
| |
| Create a partial using a bound function if you want to resolve from the same `fromDir` multiple times: |
| |
| ```js |
| const resolveFromFoo = resolveFrom.bind(null, 'foo'); |
| |
| resolveFromFoo('./bar'); |
| resolveFromFoo('./baz'); |
| ``` |
| |
| |
| ## Related |
| |
| - [resolve-cwd](https://github.com/sindresorhus/resolve-cwd) - Resolve the path of a module from the current working directory |
| - [import-from](https://github.com/sindresorhus/import-from) - Import a module from a given path |
| - [import-cwd](https://github.com/sindresorhus/import-cwd) - Import a module from the current working directory |
| - [resolve-pkg](https://github.com/sindresorhus/resolve-pkg) - Resolve the path of a package regardless of it having an entry point |
| - [import-lazy](https://github.com/sindresorhus/import-lazy) - Import a module lazily |
| - [resolve-global](https://github.com/sindresorhus/resolve-global) - Resolve the path of a globally installed module |
| |
| |
| ## License |
| |
| MIT © [Sindre Sorhus](https://sindresorhus.com) |