walk-dir
v0.0.10
Published
"Walk" through a directory, revealing the contained folders and files in a practical way
Downloads
34
Maintainers
Readme
walk-Dir
NPM-Module used to "walk" through a directory, revealing the contained folders and files in a practical way.
Why
Oftentimes when working with a node.js application, it is necessary to retrieve the structure of a certain folder in an easy-to-parse form. This is useful e.g. when building an express.js-router or for bootstrapping child-modules automatically.
##Setup
Install walkDir via npm install walk-dir --save
Make sure not to confuse this module with "walkdir", this is "walk-dir"!
Usage
Require walkDir using
var walkDir = require("walkdir");
Choose one of the following methods it provides:
2.1 List
`walkDir.list(excludedPath, includedPath, depth)`
excludedPath
: beginning of your search-path which should not be included in the results.includedPath
: end of your search-path which should be included in the results.depth
: At what level of depth should the recursive search end?- 0: Never. End when all subdirectories have been found and listed.
- x: End after peeking into x levels of folders, 1 being the provided path
returns: Array of Strings representing the paths to found folders and files
2.2 Tree
`walkDir.tree(excludedPath, includedPath, depth)`
excludedPath
: beginning of your search-path which should not be included in the results.includedPath
: end of your search-path which should be included in the results.depth
: At what level of depth should the recursive search end?- 0: Never. End when all subdirectories have been found and listed.
- x: End after peeking into x levels of folders, 1 being the provided path
- returns: JS-Object-tree where folders are branches and leaves are "true". -> Full paths are built from object-keys.
Decide on using the synchronous, promise-based or callback-based version
3.1 Synchronous
- All methods are available as Synchronous versions by simply appending "Sync" to it
- e.g. listSync, treeSync
3.2 Promises
- All methods return promises
- simply use them to react to success/failure of the given method
- e.g.
list(...).then(function(result){/** do sth with result **/ }).catch(function(err){/** react to error **/)
3.3 Callbacks
- All methods accept a callback-function as optional last argument
- simply pass this function using the signature
function(err, result){...}
- e.g.
list(..., function(err, result){/** do sth with result if !err */})