cloudfunctions/ClearingRedundantFolders/node_modules/walkdir/walkdir.js
(开头部分) 7KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
var EventEmitter = require('events').EventEmitter,
_fs = require('fs'),
_path = require('path'),
sep = _path.sep||'/';// 0.6.x
module.exports = walkdir;
walkdir.find = walkdir.walk = walkdir;
walkdir.sync = function(path,options,eventHandler){
if(typeof options == 'function') cb = options;
options = options || {};
options.sync = true;
return walkdir(path,options,eventHandler);
};
// return promise.
walkdir.async = function(path,options,eventHandler){
return new Promise((resolve,reject)=>{
if(typeof options == 'function') cb = options;
options = options || {};
let emitter = walkdir(path,options,eventHandler)
emitter.on('error',reject)
emitter.on('fail',(path,err)=>{
err.message = 'Error walking": '+path+' '+err.message
if(err) reject(err)
})
let allPaths = {}
emitter.on('path',(path,stat)=>{
if(options.no_return !== true) allPaths[path] = stat;
})
emitter.on('end',()=>{
if(options.no_return !== true){
return resolve(options.return_object?allPaths:Object.keys(allPaths))
}
resolve()
})
})
}
function walkdir(path,options,cb){
if(typeof options == 'function') cb = options;
options = options || {};
if(options.find_links === undefined){
options.find_links = true;
}
var fs = options.fs || _fs;
var emitter = new EventEmitter(),
dontTraverse = [],
allPaths = (options.return_object?{}:[]),
resolved = false,
inos = {},
后面还有 244 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
