var resolve = require('resolve');
```
+For both the synchronous and asynchronous methods, errors may have any of the following `err.code` values:
+
+- `MODULE_NOT_FOUND`: the given path string (`id`) could not be resolved to a module
+- `INVALID_BASEDIR`: the specified `opts.basedir` doesn't exist, or is not a directory
+- `INVALID_PACKAGE_MAIN`: a `package.json` was encountered with an invalid `main` property (eg. not a string)
+
## resolve(id, opts={}, cb)
Asynchronously resolve the module path string `id` into `cb(err, res [, pkg])`, where `pkg` (if defined) is the data from `package.json`.
* opts.extensions - array of file extensions to search in order
+* opts.includeCoreModules - set to `false` to exclude node core modules (e.g. `fs`) from the search
+
* opts.readFile - how to read files asynchronously
* opts.isFile - function to asynchronously test whether a file exists
paths: [],
basedir: __dirname,
extensions: ['.js'],
+ includeCoreModules: true,
readFile: fs.readFile,
isFile: function isFile(file, cb) {
fs.stat(file, function (err, stat) {
});
},
realpath: function realpath(file, cb) {
- var realpath = typeof fs.realpath.native === 'function' ? fs.realpath.native : fs.realpath;
- realpath(file, function (realPathErr, realPath) {
- if (realPathErr && realPathErr.code !== 'ENOENT') cb(realPathErr);
- else cb(null, realPathErr ? file : realPath);
- });
- },
+ var realpath = typeof fs.realpath.native === 'function' ? fs.realpath.native : fs.realpath;
+ realpath(file, function (realPathErr, realPath) {
+ if (realPathErr && realPathErr.code !== 'ENOENT') cb(realPathErr);
+ else cb(null, realPathErr ? file : realPath);
+ });
+ },
moduleDirectory: 'node_modules',
preserveSymlinks: true
}
* opts.extensions - array of file extensions to search in order
+* opts.includeCoreModules - set to `false` to exclude node core modules (e.g. `fs`) from the search
+
* opts.readFile - how to read files synchronously
* opts.isFile - function to synchronously test whether a file exists
paths: [],
basedir: __dirname,
extensions: ['.js'],
+ includeCoreModules: true,
readFileSync: fs.readFileSync,
isFile: function isFile(file) {
try {
}
```
-## resolve.isCore(pkg)
-
-Return whether a package is in core.
-
# install
With [npm](https://npmjs.org) do: