sn-vue-cli
Version:
* npm install sn-vue-cli -g
41 lines (38 loc) ⢠1.16 kB
JavaScript
const { promisify } = require('util');
const figlet = promisify(require('figlet'));
const { clone } = require('./download')
const clear = require('clear');
const open = require('open');
const chalk = require('chalk');
const log = content => console.log(chalk.green(content));
const spawn = async (...arg) => {
const { spawn } = require('child_process');
return new Promise(resolve => {
const proc = spawn(...arg)
proc.stdout.pipe(process.stdout)
proc.stderr.pipe(process.stderr)
proc.on('close', () => {
resolve()
})
})
}
module.exports = async name => {
clear();
const data = await figlet('SN WELCOME');
log(data);
log(`ššš åå»ŗé”¹ē® < ${name} >`);
await clone('github:longyanjiang/sn-vue-template', name)
/** å®č£
ä¾čµ */
log('å®č£
ä¾čµäø......')
await spawn('cnpm', ['install'], { cwd: `./${name}` })
log(chalk.green(`
šå®č£
å®ę:
To Get Start:
====================
cd <${name}>
npm run serve
====================
`))
open('http://localhost:9000')
await spawn('npm', ['run', 'dev'], { cwd: `./${name}` })
}