Browse Source

关联选项设置效果完成

lwx_v8
liwenxuan 2 years ago
parent
commit
133952f6df
  1. 81
      src/components/DesignForm/public/form/form.vue

81
src/components/DesignForm/public/form/form.vue

@ -202,7 +202,35 @@ interface hideFieldConditionArritem {
conditions: any[]
}
const recursionToGetFinallyHideFields = (hideFieldArr: any[],radioSelectArr3: string | any[],modelKeyArr: string | any[],defaultHideFields: any[],nowShowingDefaultHideFieldArr: any[],nowShowingFieldArr: string[]) => {
const recursionToGetFinallyHideFields = (hideFieldArr: any[],radioSelectArr3: string | any[],defaultHideFields: any[]) => {
nextTick(() => {
console.log("以showFields的处理过冒号的每个元素为key,其对应的optionValue为value,新建的数组radioselectArr3 --- 内容为完整显示隐藏条件")
console.log(radioSelectArr3)
console.log("当前表单的值-------------------")
console.log(model.value)
console.log("默认隐藏的字段-----------------")
console.log(defaultHideFields)
let modelKeyArr = [];//
for(let i= 0;i<props.formData.list.length;i++){
modelKeyArr.push(props.formData.list[i].name+"")
}
console.log("所有字段modelKeyArr^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^")
console.log(modelKeyArr)
//
let nowShowingDefaultHideFieldArr = defaultHideFields.filter(a => !hideFieldArr.includes(a))
//
let nowShowingFieldArr = modelKeyArr.filter(a => !hideFieldArr.includes(a))
//key,value,
const hideFieldConditionArr:hideFieldConditionArritem[] = []
@ -353,6 +381,25 @@ const recursionToGetFinallyHideFields = (hideFieldArr: any[],radioSelectArr3: st
//conditionfield,x-1,x-1field,hideFieldArr
if()
} */
console.log("条件筛选过后最终要隐藏的字段-----"+hideFieldArr)
//
if(formProps.value.type!=5){
props.formData.config.hideField?.push(...hideFieldArr)
}
});
return hideFieldArr
}
@ -611,30 +658,11 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
hideFieldArr = Array.from(new Set(hideFieldArr))
const defaultHideFields: any[] = JSON.parse(JSON.stringify(hideFieldArr))
nextTick(() => {
console.log("以showFields的处理过冒号的每个元素为key,其对应的optionValue为value,新建的数组radioselectArr3 --- 内容为完整显示隐藏条件")
console.log(radioSelectArr3)
console.log("当前表单的值-------------------")
console.log(model.value)
console.log("默认隐藏的字段-----------------")
console.log(hideFieldArr)
let modelKeyArr = [];//
for(let i= 0;i<props.formData.list.length;i++){
modelKeyArr.push(props.formData.list[i].name+"")
for(let i = 0;i<defaultHideFields.length;i++){
hideFieldArr = recursionToGetFinallyHideFields(hideFieldArr,radioSelectArr3,defaultHideFields)
}
console.log("所有字段modelKeyArr^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^")
console.log(modelKeyArr)
//
let nowShowingDefaultHideFieldArr = defaultHideFields.filter(a => !hideFieldArr.includes(a))
//
let nowShowingFieldArr = modelKeyArr.filter(a => !hideFieldArr.includes(a))
hideFieldArr = recursionToGetFinallyHideFields(hideFieldArr,radioSelectArr3,defaultHideFields)
hideFieldArr = recursionToGetFinallyHideFields(hideFieldArr,radioSelectArr3,modelKeyArr,defaultHideFields,nowShowingDefaultHideFieldArr,nowShowingFieldArr)
@ -643,15 +671,8 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
console.log("条件筛选过后最终要隐藏的字段-----"+hideFieldArr)
//
if(formProps.value.type!=5){
props.formData.config.hideField?.push(...hideFieldArr)
}
});

Loading…
Cancel
Save