sapi-kit
Version:
A development toolkit for Minecraft Bedrock Edition Script API
27 lines (26 loc) • 914 B
JavaScript
import chalk from "chalk";
import chokidar from "chokidar";
import { buildMain, clearCache, runBuild } from "./build.js";
import { formatTime } from "./func.js";
//构建状态
const isBuilding = { value: false };
export function runDev() {
const watcher = chokidar.watch("src", { ignoreInitial: true });
// 启动监听源代码
watcher.on("change", (filePath) => {
if (isBuilding.value) {
return;
}
process.stdout.write("\x1Bc"); //清空终端
console.log(`${formatTime()} ${chalk.yellow("[变更]")} ${filePath}`);
runBuild(isBuilding, false);
});
process.stdout.write("\x1Bc"); //清空终端
// 启动构建
buildMain(isBuilding, false);
process.on("SIGINT", async () => {
await clearCache();
// 做一些清理工作,比如关闭文件、保存状态等
process.exit(0); // 正常退出
});
}