鍍金池/ 問答/Java  HTML/ nodejs遞歸遍歷子目錄如何設(shè)置結(jié)束回調(diào)?

nodejs遞歸遍歷子目錄如何設(shè)置結(jié)束回調(diào)?

我寫個大概的示例代碼出來,各位幫看看,如果是這樣遍歷遞歸子目錄所有文件,那么如何設(shè)置所有遞歸結(jié)束后的回調(diào)呢,怎么設(shè)置條件呢?

nodejs示例代碼:
function getDirTree( inputPath ){
     let files = fs.readdirSync(inputPath)
     for(file of files){
         let filePath = inputPath + '/' + file;
         let fileState = fs.statSync(filePath);
         if(fileState.isDirectory()){ // 如果是目錄 遞歸
             getDirTree(filePath)
         }else{
             console.log(file)
         }
     }
}
getDirTree(rootPath)
回答
編輯回答
絯孑氣
function getDirTree( inputPath, callback){
     let files = fs.readdirSync(inputPath)
     for(file of files){
         let filePath = inputPath + '/' + file;
         let fileState = fs.statSync(filePath);
         if(fileState.isDirectory()){ // 如果是目錄 遞歸
             getDirTree(filePath)
         }else{
             console.log(file)
         }
     }
     callback && callback.call();
}
getDirTree(rootPath, function(){
    console.log('end.....');
})
2018年1月6日 13:33