From 4a45efcec76cbe047d069aef04e315082ff0775d Mon Sep 17 00:00:00 2001
From: Jacob <hlnie@tohours.com>
Date: 星期一, 12 十月 2026 18:04:20 +0800
Subject: [PATCH] Merge branch 'master' into sit
---
scripts/set-env.js | 61 ++++++++++++++++++++++++++++++
1 files changed, 61 insertions(+), 0 deletions(-)
diff --git a/scripts/set-env.js b/scripts/set-env.js
new file mode 100644
index 0000000..26f1280
--- /dev/null
+++ b/scripts/set-env.js
@@ -0,0 +1,61 @@
+/**
+ * 鐜鍒囨崲锛氭寜 config/env/<env>.js 浠庢ā鏉跨敓鎴� manifest.json
+ *
+ * 鐢ㄦ硶锛�
+ * npm run env:sit 绛変环浜� node scripts/set-env.js sit
+ * npm run env:prod 绛変环浜� node scripts/set-env.js prod
+ *
+ * 璇存槑锛�
+ * manifest.json 鏄� HBuilderX 鐨勭紪璇戣緭鍏ワ紙appid 灞炰簬缂栬瘧鏈熷�硷紝鏃犳硶鍍忔帴鍙e湴鍧�閭f牱杩愯鏃跺垏鎹級锛�
+ * 浣嗗畠鍚幆澧冪浉鍏� appid锛屼笉閫傚悎鐩存帴鎻愪氦锛屾墍浠ワ細
+ * manifest.json.demo锛堝叆搴撴ā鏉匡級 --鐢熸垚--> manifest.json锛堝凡 .gitignore锛�
+ * 鐢熸垚鍚庡繀椤婚噸鏂扮紪璇戜竴娆★紝骞跺湪寰俊寮�鍙戣�呭伐鍏蜂腑閲嶆柊鎵撳紑椤圭洰锛坅ppid 鍙樻洿闇�閲嶅紑锛夈��
+ *
+ * 濡傞渶鍦� HBuilderX 閲岀洿鎺ョ紪璇�/杩愯璋冭瘯锛屽厛璺戜竴娆℃湰鑴氭湰锛�
+ * 璧板懡浠よ鍙戣鍒欑洿鎺ョ敤 scripts/publish.js锛堝唴閮ㄤ細鑷姩鐢熸垚锛夈��
+ *
+ * appid 鏁版嵁婧愬敮涓�锛歝onfig/env/<env>.js 涓殑 UNI_APPID锛圖Cloud 鏍囪瘑锛夈�丄PPID锛堝皬绋嬪簭 appid锛�
+ */
+const fs = require('fs');
+const path = require('path');
+const manifest = require('./manifest');
+
+const ROOT = path.resolve(__dirname, '..');
+const ENV_DIR = path.join(ROOT, 'config', 'env');
+
+function fail(msg) {
+ console.error('[set-env] ' + msg);
+ process.exit(1);
+}
+
+function main() {
+ const envName = (process.argv[2] || '').trim();
+ const available = fs.existsSync(ENV_DIR)
+ ? fs.readdirSync(ENV_DIR).filter(f => f.endsWith('.js') && f !== 'index.js').map(f => f.replace(/\.js$/, ''))
+ : [];
+
+ if (!envName) {
+ fail('璇锋寚瀹氱幆澧冨悕锛屽彲閫夛細' + available.join(' / ') + '\n 渚嬶細npm run env:sit');
+ }
+ if (available.indexOf(envName) < 0) {
+ fail('鏈壘鍒� config/env/' + envName + '.js锛屽彲閫夛細' + available.join(' / '));
+ }
+
+ const env = require(path.join(ENV_DIR, envName + '.js'));
+ if (!env.UNI_APPID || !env.APPID) {
+ fail('config/env/' + envName + '.js 缂哄皯 UNI_APPID 鎴� APPID');
+ }
+
+ console.log('[set-env] 鍒囨崲鍒� ' + envName + '锛�' + env.ENV_NAME + '锛�');
+ console.log(' DCloud appid : ' + env.UNI_APPID);
+ console.log(' 灏忕▼搴� appid : ' + env.APPID);
+ console.log(' 鎺ュ彛鍦板潃 : ' + env.HTTP_REQUEST_URL);
+
+ const res = manifest.generate(env);
+
+ console.log(res.changed
+ ? '[set-env] 瀹屾垚锛岃鍦� HBuilderX 涓噸鏂扮紪璇戜竴娆★紝骞跺湪寰俊寮�鍙戣�呭伐鍏蜂腑閲嶆柊鎵撳紑椤圭洰'
+ : '[set-env] 鏃犻渶鏀瑰姩锛屽綋鍓� manifest.json 宸叉槸 ' + envName + ' 鐜');
+}
+
+main();
--
Gitblit v1.4.0