bd-admin
Version:
一款能根据需求快速配置vue后台管理的脚手架
51 lines (50 loc) • 1.39 kB
JavaScript
import fs from "fs-extra";
import spawn from "cross-spawn";
import chalk from "chalk";
export const getFileList = (filesPath) => {
return new Promise((res, rej) => {
fs.readdir(filesPath, (err, fileList) => {
if (err)
rej(err);
res(fileList);
});
});
};
export const createFolder = (path) => {
return new Promise((res, rej) => {
fs.readdir(path, (err, files) => {
if (err) {
fs.mkdir(path, (err) => {
if (err) {
rej(err);
}
else {
res([]);
}
});
}
else {
rej(files);
}
});
});
};
export const installDependencies = (path, command) => {
return new Promise((res, rej) => {
const dependencies = ["ejs@3.1.8"];
const child = spawn(command, ["install", "-D"].concat(dependencies), {
stdio: "inherit",
cwd: path,
});
child.on("close", function (code) {
// 执行失败
if (code !== 0) {
console.log(chalk.red("Error occurred while installing dependencies!"));
rej();
}
else {
res(code);
}
});
});
};