UNPKG

dws-cli-ui

Version:

dws-cli dws系列:包括大屏、移动端、设计器项目等待

47 lines (36 loc) 1.53 kB
const { promisify } = require("util") const path = require("path") const fs = require("fs") const program = require("commander") const downloadRepo = promisify(require("download-git-repo")) const open = require("open") const log = require("../utils/log") const terminal = require("../utils/terminal") const { createEJS } = require("../utils/file") const { GitRepo } = require("../config/repo_config") // const setProjectInfo = require("./setProjectInfo") const setDwsProject = require("./setDwsProject") const createProject = async (project, otherArg) => { // 1.提示信息 log.hint('Dws帮助你创建项目'); // 2.配置项目信息 const config = await setDwsProject() if (!GitRepo[config.type]) return console.log("\n") // 3.clone项目从仓库 await downloadRepo(GitRepo[config.type], project, { clone: true }) // 4.用户可以自己执行,执行终端命令npm install // terminal.exec('npm install', {cwd: `./${project}`}); const npm = process.platform === "win32" ? "npm.cmd" : "npm" // --loglevel 参数:silent, error, warn, http, info, verbose, silly await terminal.spawn(npm, ["install", "--loglevel", "info"], { stdio: ["ignore", "ignore", "pipe"], cwd: `./${project}` //工作空间 }) // ProcessOn(spawnNpm) // 5.打开浏览器 项目中已经配置 // open("http://localhost:3030/") // 6.运行项目 await terminal.spawn(npm, ["run", "start"], { cwd: `./${project}` }, true) } module.exports = { createProject }