文件操作fs(05):示例-初始化目录结构

示例:初始化目录结构

/**
 * 文件操作案例(初始化目录结构)
 */

//文件路径
const path = require("path");
const fs = require("fs");

let root = __dirname;
let fileContent = `
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=<device-width>, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <h1>欢迎使用demoProject</h1>
    </body>
    </html>
`;
//初始化数据
let initData = {
    projectName: 'mydemo',
    data: [
        {
            name: 'img',
            type: 'dir'
        },
        {
            name: 'js',
            type: 'dir'
        },
        {
            name: 'css',
            type: 'dir'
        },
        {
            name: 'index.html',
            type: 'file'
        }
    ]
};

fs.mkdir(path.join(root,'../', initData.projectName), (err) => {
    if (err) {
        if (err.code != 'EEXIST') { 
            console.log(err);
            return;
        }
    }

    //创建子目录和文件
    initData.data.forEach((item) => {
        if (item.type == 'dir') {
            //创建子目录
            fs.mkdirSync(path.join(root,'../', initData.projectName, item.name));
        } else if (item.type == 'file') {
            fs.writeFileSync(path.join(root,'../', initData.projectName, item.name), fileContent);
        }
    });
});

posted @ 2020-09-28 17:39  mrtransition  阅读(138)  评论(0)    收藏  举报