mirror of
https://github.com/crmeb/CRMEB.git
synced 2026-10-28 13:31:04 +00:00
feat: 添加构建后脚本以发布管理端和uni-app H5构建产物
This commit is contained in:
parent
db8b609c01
commit
b837b2f8de
@ -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",
|
||||
|
||||
17
frontend/admin/scripts/publishAdmin.mjs
Normal file
17
frontend/admin/scripts/publishAdmin.mjs
Normal 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}`);
|
||||
@ -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",
|
||||
|
||||
20
frontend/uni-app/scripts/publishH5.mjs
Normal file
20
frontend/uni-app/scripts/publishH5.mjs
Normal 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}`);
|
||||
Loading…
x
Reference in New Issue
Block a user