UNPKG

acv-cli

Version:

a auto create vue2 cli

49 lines (40 loc) 1.22 kB
const path = require('path'); const fs = require('fs'); const ejs = require('ejs'); // 编译并生成对应模板 templateName模板名 data额外参数 const compile = (templateName, data) => { const templatePosition = `../templates/${templateName}`; // 获取模板完整路径 const templatePath = path.resolve(__dirname, templatePosition); return new Promise((resolve, reject) => { ejs.renderFile(templatePath, { data }, {}, (err, result) => { if (err) { console.log(err); reject(err); return; } resolve(result); }) }) } const writeToFile = (path, content) => { // 判断path是否存在, 如果不存在, 创建对应的文件夹 return fs.promises.writeFile(path, content); } // eg src/components/navbar/header // 递归生成文件夹 const createDir = (dirPath) => { if (!fs.existsSync(dirPath)) { if (createDir(path.dirname(dirPath))) { fs.mkdirSync(dirPath); return true } } else { return true } } module.exports = { compile, writeToFile, createDir }