From 9b10a984e75c44eee58cea4b26a4f36c21baef61 Mon Sep 17 00:00:00 2001 From: DCloud_LXH <283700113@qq.com> Date: Fri, 24 Dec 2021 17:50:47 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=20=E5=8F=AA=E6=9C=89?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=9D=A1=E4=BB=B6=E7=BC=96=E8=AF=91?= =?UTF-8?q?=E6=97=B6=E7=9A=84=E6=88=96=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/uni-cli-shared/lib/package.js | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/packages/uni-cli-shared/lib/package.js b/packages/uni-cli-shared/lib/package.js index cce87153c..9bec1d1af 100644 --- a/packages/uni-cli-shared/lib/package.js +++ b/packages/uni-cli-shared/lib/package.js @@ -1,7 +1,14 @@ const uniI18n = require('@dcloudio/uni-cli-i18n') +function isPlainObject(a) { + if (a === null) { + return false + } + return typeof a === 'object' +} + module.exports = { - initCustomScript (name, pkgPath) { + initCustomScript(name, pkgPath) { const pkg = require(pkgPath) const uniAppOptions = pkg['uni-app'] @@ -21,6 +28,16 @@ module.exports = { process.exit(0) } + if (isPlainObject(scriptOptions.define)) { + Object.keys(uniAppOptions.scripts).forEach(scriptName => { + if (scriptName !== name) { + const define = uniAppOptions.scripts[scriptName].define + Object.keys(define).forEach(name => define[name] = false) + Object.assign(scriptOptions.define, define) + } + }) + } + process.env.UNI_PLATFORM = scriptOptions.env.UNI_PLATFORM process.env.UNI_SCRIPT = name -- GitLab