fs实现自动化创建文件夹及其文件:
1.js
//创建文件配置参数js文件
const {file} = require('./file')
let programeData = {
name:'aaa', //文件夹名称:aaa
fileData:[ //文件夹aaa内需创建的文件
{
name:'css', //文件名称
type:'dir' //文件类型
},
{
name:'js',
type:'dir'
},
{
name:'images',
type:'dir'
},
{
name:'index.html',
type:'file'
}
]
}
//导出programeData
module.exports.programeData = programeData
file.js
const fs = require('fs')
const path = require('path')
const {programeData} = require('./1.js') //引入1.js创建文件配置参数文件
fn(programeData); //执行自动化创建文件fn方法
function fn(data){
let {name,fileData} = data //获取文件名与文件内需创建的文件对象
//如果heaven文件夹已经存在 就不创建了
if(!fs.existsSync(name)){ //如果文件夹不存在进入创建
fs.mkdirSync(name); //创建文件夹
fileData.forEach(item=>{ //遍历fileData
const {type} = item; //获取需创建的文件类型
const fullpath = path.join(__dirname,name,item.name)
console.log(fullpath)
if(type==='dir'){ //如果type是dir 就创建文件夹
fs.mkdirSync(fullpath)
}else{
fs.writeFileSync(fullpath,'我是html文件')
}
})
}
}
执行file.js后文件创建成功: