feat: 添加构建后脚本以发布管理端和uni-app H5构建产物

This commit is contained in:
吴昊天 2026-09-24 11:06:01 +08:00
parent db8b609c01
commit b837b2f8de
4 changed files with 40 additions and 0 deletions

View File

@ -8,7 +8,9 @@
"serve": "node src/libs/start.js && vite --mode dev --open",
"dev": "node src/libs/start.js && vite --mode dev --open",
"build": "vite build --mode production",
"postbuild": "node scripts/publishAdmin.mjs",
"build:ext": "node scripts/build-extensions.js",
"postbuild:ext": "node scripts/publishAdmin.mjs",
"dev:ext": "node scripts/build-extensions.js --watch",
"build:all": "npm run build && npm run build:ext",
"preview": "vite preview --mode production",

View File

@ -0,0 +1,17 @@
import fs from 'node:fs';
import path from 'node:path';
import { fileURLToPath } from 'node:url';
const projectRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..');
const sourceDir = path.join(projectRoot, 'dist');
const targetDir = path.resolve(projectRoot, '../../backend/public/admin');
if (!fs.existsSync(sourceDir)) {
throw new Error(`管理端构建产物不存在:${sourceDir}`);
}
fs.rmSync(targetDir, { recursive: true, force: true });
fs.mkdirSync(targetDir, { recursive: true });
fs.cpSync(sourceDir, targetDir, { recursive: true });
console.log(`管理端构建产物已发布到 ${targetDir}`);

View File

@ -6,6 +6,7 @@
"scripts": {
"dev:h5": "uni",
"build:h5": "uni build",
"postbuild:h5": "node scripts/publishH5.mjs",
"dev:mp-weixin": "uni -p mp-weixin",
"build:mp-weixin": "uni build -p mp-weixin",
"dev:mp-alipay": "uni -p mp-alipay",

View File

@ -0,0 +1,20 @@
import fs from 'node:fs';
import path from 'node:path';
import { fileURLToPath } from 'node:url';
const projectRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..');
const sourceDir = path.join(projectRoot, 'dist', 'build', 'h5');
const targetDir = path.resolve(projectRoot, '../../backend/public');
const generatedDirectories = ['assets', 'pages', 'static'];
if (!fs.existsSync(sourceDir)) {
throw new Error(`uni-app H5 构建产物不存在:${sourceDir}`);
}
for (const directory of generatedDirectories) {
fs.rmSync(path.join(targetDir, directory), { recursive: true, force: true });
}
fs.mkdirSync(targetDir, { recursive: true });
fs.cpSync(sourceDir, targetDir, { recursive: true });
console.log(`uni-app H5 构建产物已发布到 ${targetDir}`);