Files
medical-mall/scripts/switch-pages.js
2026-03-24 00:21:19 +08:00

46 lines
1.8 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* 切换 pages.json 在「完整模式」和「商家端专属模式」之间
*
* 用法:
* npm run pages:merchant → 仅编译 merchant 相关页面(大幅缩短编译时间)
* npm run pages:full → 恢复完整 pages.json
*/
const fs = require("fs");
const path = require("path");
const root = path.resolve(__dirname, "..");
const pagesJson = path.join(root, "pages.json");
const pagesFull = path.join(root, "pages.full.json");
const pagesMerchant = path.join(root, "pages.merchant.json");
const mode = process.argv[2]; // 'merchant' | 'full'
if (mode === "merchant") {
if (!fs.existsSync(pagesMerchant)) {
console.error("❌ pages.merchant.json 不存在,请先创建该文件。");
process.exit(1);
}
// 备份当前 pages.json仅在未备份时执行避免覆盖真正的完整版本
if (!fs.existsSync(pagesFull)) {
fs.copyFileSync(pagesJson, pagesFull);
console.log("📦 已备份 pages.json → pages.full.json");
}
fs.copyFileSync(pagesMerchant, pagesJson);
console.log("✅ 已切换为【商家端专属编译模式】");
console.log(" 仅包含 merchant 页面,差量编译速度大幅提升。");
console.log(" 恢复完整版本npm run pages:full");
} else if (mode === "full") {
if (!fs.existsSync(pagesFull)) {
console.error("❌ pages.full.json 不存在。");
console.error(" 可能当前已经是完整模式,或备份文件已被删除。");
process.exit(1);
}
fs.copyFileSync(pagesFull, pagesJson);
console.log("✅ 已恢复【完整 pages.json】");
console.log(" 包含 consumer + merchant + admin 全部页面。");
} else {
console.log("用法:");
console.log(" npm run pages:merchant 切换到商家端专属编译模式");
console.log(" npm run pages:full 恢复完整编译模式");
}