diff --git a/src/api/DesignForm/types.ts b/src/api/DesignForm/types.ts index 32d431d..f1f890c 100644 --- a/src/api/DesignForm/types.ts +++ b/src/api/DesignForm/types.ts @@ -1,4 +1,5 @@ export interface FormList { + list?: any name: string type: string control: any // 当前type表单控件所有props diff --git a/src/components/DesignForm/public/form/form.vue b/src/components/DesignForm/public/form/form.vue index 769caed..d6ad84d 100644 --- a/src/components/DesignForm/public/form/form.vue +++ b/src/components/DesignForm/public/form/form.vue @@ -215,6 +215,7 @@ const recursionToGetFinallyHideFields = (hideFieldArr: any[],radioSelectArr3: st nextTick(() => { + //console.log(model.value) /* console.log("以showFields的处理过冒号的每个元素为key,其对应的optionValue为value,新建的数组radioselectArr3 --- 内容为完整显示隐藏条件") console.log(radioSelectArr3) console.log("当前表单的值-------------------") @@ -225,6 +226,9 @@ const recursionToGetFinallyHideFields = (hideFieldArr: any[],radioSelectArr3: st for(let i= 0;i0){ hideFieldArr = hideFieldArr.filter((item: string) => item!=toshow) } + //console.log(x,hideFieldArr) } //将隐藏的字段值重置 for(let i = 0; i< hideFieldArr.length;i++){ @@ -541,6 +550,8 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any) */ }) let mustBeHidden: any = [] + +let newModelKeyArr: string[] = [] function showOrHide (data:any){ //console.log(data) @@ -734,21 +745,97 @@ function showOrHide (data:any){ const switchShowConfigArr = [] //以showFields的处理过冒号的每个元素为key,其对应的optionValue为value,新建一个数组radioselectArr2。----用于获取所有出现在配置中的字段。 const radioSelectArr2:any[] = [] + + //20240815 关联选项设置的隐藏效果嵌套在内时不生效的问题修复 liwenxuan start + //console.log(props.formData.list) newModelKeyArr for(let i = 0;i0){ + for(let z = 0;z0){ + for(let z = 0;z0){ + for(let m = 0;m