From 9ce49bf3fe8ef0890ed8f25ed3adf168af912f4e Mon Sep 17 00:00:00 2001 From: Guard <35839602+Guard-233@users.noreply.github.com> Date: Fri, 8 May 2020 16:51:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=B5=81=E7=A8=8B=20bug=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=20(#6)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: 业务流程的支持 * fix: 流程bug修改 * fix: 修复了隐藏属性会被验证的bug,修复了隐藏的表格还显示的bug * fix: 修复了使用流程后,隐藏失效的bug,修复了使用流程后,对于隐藏字段还进行校验的bug --- .../src/mixins/vue/control-mixin.js | 6 +++++- .../src/components/vue-ncform/ncform.vue | 21 ++++++++++++------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/packages/ncform-common/src/mixins/vue/control-mixin.js b/packages/ncform-common/src/mixins/vue/control-mixin.js index 745653e..00cadd8 100755 --- a/packages/ncform-common/src/mixins/vue/control-mixin.js +++ b/packages/ncform-common/src/mixins/vue/control-mixin.js @@ -99,7 +99,11 @@ export default { return this._analyzeVal(this.config.hidden); } let nodeCodeArr = this.globalConst.nodeCodeArr || [] - return !(nodeCodeArr.includes(this.schema.ui.process) || this.schema.ui.process === this.globalConst.nodeUId); + if ((nodeCodeArr.includes(this.schema.ui.process) || this.schema.ui.process === this.globalConst.nodeUId)) { + return this._analyzeVal(this.config.hidden) + } else { + return true + } }, mergeConfig() { let newConfig = extend( diff --git a/packages/ncform/src/components/vue-ncform/ncform.vue b/packages/ncform/src/components/vue-ncform/ncform.vue index 451a474..3358659 100755 --- a/packages/ncform/src/components/vue-ncform/ncform.vue +++ b/packages/ncform/src/components/vue-ncform/ncform.vue @@ -211,18 +211,23 @@ export default { _get(this.dataFormSchema, 'globalConfig.ignoreRulesWhenHidden', true) ) { let isHidden = false + let snapIsHidden = ncformUtils.smartAnalyzeVal(schema.ui.hidden, { + idxChain: __idxChain, + data: { + rootData: this.$data.formData, + constData: this.dataFormSchema.globalConfig.constants + } + }); if (!schema || schema.ui.process === true || schema.ui.process === undefined) { // 如果开启了忽略隐藏字段规则 - isHidden = ncformUtils.smartAnalyzeVal(schema.ui.hidden, { - idxChain: __idxChain, - data: { - rootData: this.$data.formData, - constData: this.dataFormSchema.globalConfig.constants - } - }); + isHidden = snapIsHidden } else { let { constants } = this.dataFormSchema.globalConfig - isHidden = !(constants.nodeCodeArr.includes(schema.ui.process) || schema.ui.process === constants.nodeUId); + if ((constants.nodeCodeArr.includes(schema.ui.process) || schema.ui.process === constants.nodeUId)) { + isHidden = snapIsHidden + } else { + isHidden = true + } } // 如果是隐藏,则忽略校验规则 if (isHidden)