UNPKG

xuqiang-cli

Version:

st-cli脚手架

51 lines (46 loc) 1.22 kB
const path = require("path") const fs = require("fs-extra") const Inquirer = require("inquirer") const Creator = require("./creator") /** * * @param {String} projectName * @param {Object} options */ module.exports = async function (projectName, options) { // 获取当前工作目录 const cwd = process.cwd() // 平接得到的项目目录 const targetDirectory = path.join(cwd, projectName) const creator = new Creator(projectName, targetDirectory) if (fs.existsSync(targetDirectory)) { if (options.force) { await fs.remove(targetDirectory) } else { let { isOverwrite } = await new Inquirer.prompt([ { name: "isOverwrite", type: "list", message: "Target directory exists, please choose an action", choices: [ { name: "Overwrite", value: true }, { name: "Cancel", value: false }, ], }, ]) if (isOverwrite) { console.log("选择了删除") await fs.remove(targetDirectory) await fs.mkdir(targetDirectory) } else { console.log("选择了取消") } // 创建 await creator.create() } } else { await fs.mkdir(targetDirectory) // 创建 await creator.create() } }