UNPKG

qb-clio

Version:

qb-cli 脚手架,仅有vue模板

42 lines (40 loc) 1.46 kB
const fse = require('fs-extra') const ora = require('ora') const path = require('path') const downloadRepo = require('download-git-repo') const symbols = require('log-symbols'); const chalk = require('chalk') const pkg = require('../../package.json'); module.exports = function ({ type, ...params }) { const spinner = ora(`${type}模板下载中...`).start(); return new Promise((resolve, reject) => { downloadRepo( pkg.template[type], params.name, { clone: true }, err => { if (err) { spinner.fail(); console.log(symbols.error, chalk.red('模板下载失败!')); reject(err) } else { spinner.succeed(); const pathPkg = path.resolve(params.name, './package.json'); const targetPkg = fse.readJsonSync(pathPkg) Object.assign(targetPkg, params) fse.writeJsonSync( pathPkg, targetPkg, { spaces: '\t', EOL: '\n', } ) console.log(symbols.success, chalk.green(`模板下载成功!`)); spinner.stop(); resolve('成功') } } ); }) }