@chenmq/cli
Version:
仿@vue/cli脚手架工具
28 lines (23 loc) • 538 B
JavaScript
const ora = require('ora')
async function wrapLoading (fn, text, ...args) {
const spinner = ora({
text,
interval: 500
}).start();
try {
let res = await fn(...args);
spinner.succeed('成功!')
return res;
} catch (err) {
spinner.fail('失败!')
console.log(err);
await sleep();
return wrapLoading(fn, text, ...args)
}
}
function sleep (time = 1500) {
return new Promise((resolve, reject) => setTimeout(resolve, time));
}
module.exports = {
wrapLoading
}