Nodejs - 프로젝트 구조 초기 화 사례

3201 단어
프로젝트 초기 화
      -- `npm init -y`
         -- index.js
           -- init.js
         -- config.json
    index.html   404.html

핵심 모듈
         -- path、fs
            
  • config.json
  • {
        "rootName" : "mydemo",
        "data" : [
            {
                "name" : "img",
                "type" : "dir"
            },
            {
                "name" : "js",
                "type" : "dir"
            },
            {
                "name" : "css",
                "type" : "dir"
            },
            {
                "name" : "index.html",
                "type" : "file"
            },
            {
                "name" : "404.html",
                "type" : "file"
            }
        ]
    }
    
  • init.js
  • //        
    const cfg = require('./config.json');
    const path = require('path');
    const fs = require('fs')
    //      
    let rootName = cfg.rootName;
    //      
    let init = () => {
        fs.mkdir(path.join('./', rootName), (err) => {
            if (err) {
                console.log("       ");
                return;
            }
            cfg.data.forEach(obj => {
                if (obj.type == 'dir') {
                    fs.mkdir(path.join('./', rootName, obj.name), (err) => {
                        if (err) {
                            consle.log("       ");
                            return;
                        }
                        console.log(`${obj.name}       `)
                    })
                }else if (obj.type == 'file') {
                    fs.readFile(path.join(__dirname,obj.name),(err, data) => {
                        if (err) {
                            console.log("      ");
                            return;
                        }
                        fs.writeFile(path.join('./',rootName, obj.name),data, (err) => {
                            if (err) {
                                console.log("      ");
                                return;
                            }
                            console.log(`${obj.name}       `);
                        })
                    })
                }
            })
        })
    }
    // init();
    exports.init = init;
    
  • index.js
  • //     
    const obj = require('./init.js');
    let param = process.argv[2];
    switch(param){
        case '-i':
            obj.init();
            break;
        case '-h':
            console.log('    ');
            break;
        case '-v':
            console.log('1.0.0');
            break;
    }
    

    어떻게 사용 합 니까?
    1.        node .
    2.     node . ,   ,    
           node  ,   6.9.1
          C:\dev
    vm\v6.9.1
    ode_modules cmd , init.cmd @IF EXIST "%~dp0
    ode.exe" ( "%~dp0
    ode.exe" "%~dp0
    ode_modules\wjj\index.js" %* ) ELSE ( @SETLOCAL @SET PATHEXT=%PATHEXT:;.JS;=;% node "%~dp0
    ode_modules\wjj\index.js" %* ) init init -v init -h , ./

    좋은 웹페이지 즐겨찾기