/** * 读取一个目录中所有子目录和文件 */ const fs = require('fs') const path = require('path') var fileArr = [] var acceptFile = ['scss'] var getFile = async function(pathStr){ let dirArr = await fs.promises.readdir(pathStr); console.log(dirArr); dirArr.forEach(e => { //文件夹 let str = pathStr+'/'+e if(!isFile(str)){ getFile(str) }else{ let fileType = str.split('.')[str.split('.').length-1] if(acceptFile.indexOf(fileType)!==-1){ fileArr.push({ outputPath:pathStr+'/', inputPath:str }) } } }); } var isFile = function(filename){ var stat = fs.lstatSync(filename); var isFile = stat.isFile() return isFile } module.exports = { getFile, fileArr, } getFile('./src') // setTimeout(()=>{ // console.log(fileArr); // },5000)