前幾天,遇到這個問題的時候百度搜了一下結(jié)合自己的想法寫了一套,
話不多說:看代碼
function mkdir_bao(dirpath,dirname){
? ? //判斷是否是第一次調(diào)用?
? ? if(typeof dirname === "undefined"){?
? ? ? ? if(fs.existsSync(dirpath)){?
? ? ? ? ? ? return;?
? ? ? ? }else{?
? ? ? ? ? ? this.mkdir(dirpath,path.dirname(dirpath));?
? ? ? ? }?
? ? }else{?
? ? ? ? //判斷第二個參數(shù)是否正常,避免調(diào)用時傳入錯誤參數(shù)?
? ? ? ? if(dirname !== path.dirname(dirpath)){?
? ? ? ? ? ? this.mkdir(dirpath);?
? ? ? ? ? ? return;?
? ? ? ? }?
//?測試某個路徑下的文件是否存在
? ? ? ? if(fs.existsSync(dirname)){?
// 存在直接創(chuàng)建目錄
? ? ? ? ? ? fs.mkdirSync(dirpath)?
? ? ? ? }else{?
// 不存在回調(diào)? ?并且創(chuàng)建出來該目錄
? ? ? ? ? ? this.mkdir(dirname,path.dirname(dirname));?
? ? ? ? ? ? fs.mkdirSync(dirpath);?
? ? ? ? }?
? ? }?
}