memoize-path是通过memoized路径段来创建的可重复使用、可堆叠的文件路径。
安装:
$ pm istall memoize-path --save使用(示例):
var memo = require('memoize-path');/** * Whe a strig is passed, a fuctio is retured */var cwd = memo(process.cwd()); // use `cwd`var foo = cwd('foo');var bar = cwd('bar');var baz = cwd('baz');// use `foo`var qux = foo('a/b/c');// use `qux`var fez = qux('x/y/z');/** * Returs the memoized path whe o value is passed */cosole.log(cwd());//=> /User/dev/memo-pathcosole.log(foo());//=> /User/dev/memo-path/foocosole.log(bar());//=> /User/dev/memo-path/barcosole.log(baz());//=> /User/dev/memo-path/bazcosole.log(qux());//=> /User/dev/memo-path/foo/a/b/ccosole.log(fez());//=> /User/dev/memo-path/foo/a/b/c/x/y/z/** * The memoized path is also exposed o the fuctio's `.path` property */cosole.log(cwd.path);//=> /User/dev/memo-pathcosole.log(foo.path);//=> /User/dev/memo-path/foocosole.log(bar.path);//=> /User/dev/memo-path/barcosole.log(baz.path);//=> /User/dev/memo-path/bazcosole.log(qux.path);//=> /User/dev/memo-path/foo/a/b/ccosole.log(fez.path);//=> /User/dev/memo-path/foo/a/b/c/x/y/z
评论