Browse Source

v0.5

lwx_v8
liwenxuan 2 years ago
parent
commit
90e4f87940
  1. 93
      src/components/DesignForm/public/form/form.vue

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

@ -351,11 +351,13 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
//使props.formData.config.hideField
let hideFieldArr: any[] = [];
//
for(let i = 0;i< radioSelectArr2.length;i++){
hideFieldArr.push(radioSelectArr2[i].toShowFieldKey)
}
hideFieldArr = Array.from(new Set(hideFieldArr))
const defaultHideFields: any[] = JSON.parse(JSON.stringify(hideFieldArr))
nextTick(() => {
console.log("以showFields的处理过冒号的每个元素为key,其对应的optionValue为value,新建的数组radioselectArr3 --- 内容为完整显示隐藏条件")
@ -370,7 +372,7 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
}
console.log("所有字段modelKeyArr^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^")
console.log(modelKeyArr)
//key,value
//key,value,
const hideFieldConditionArr:hideFieldConditionArritem[] = []
interface hideFieldConditionArritem {
@ -384,8 +386,8 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
})
}
console.log(hideFieldConditionArr)
//radioSelectArr3radioSelectArr3 [ i ] . toshowFieldKey i==hideFieldArri
//radioSelectArr3radioSelectArr3 [ i ] . toshowFieldKey i==hideFieldArri
for(let i = 0;i < radioSelectArr3.length;i++){
for(let j = 0;j < radioSelectArr3[i].toShowFieldKey.length;j++){
for(let n = 0;n < hideFieldConditionArr.length;n++){
@ -406,8 +408,11 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
}
}
console.log(hideFieldConditionArr);
//.
//let showfieldsCountX = [];
for(let i = 0;i<hideFieldConditionArr.length;i++){
let x = 0//
let toshow = hideFieldConditionArr[i].toShow
let conditions = hideFieldConditionArr[i].conditions
//console.log(conditions)
@ -423,7 +428,10 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
//console.log(modelKeyArr[n])
//console.log(trueValue)
if(trueValue==conditionFieldValue){
//,conditionField.,x.
//let flag = false//.,.defaultHideFields:-
x++
}
}
}
@ -433,79 +441,46 @@ provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any)
}
if(x>0){
alert(x)
/* showfieldsCountX.push({
count:x,
field:toshow,
conditionField:
}) */
//alert(x)
hideFieldArr = hideFieldArr.filter(item => item!=toshow)
}
}
//
for(let i = 0; i< hideFieldArr.length;i++){
//console.log(i+"dsfafdasdfasfsda===="+hideFieldArr[i]+"=====jiuopfdsahokjuhuiofadshuiofadsjbknfdjisahuifhjken wij================"+model.value[hideFieldArr[i]])
if(typeof model.value[hideFieldArr[i]] === "string" || typeof model.value[hideFieldArr[i]] === "number"){
model.value[hideFieldArr[i]] = ""
}else if( model.value[hideFieldArr[i]] instanceof Array){
model.value[hideFieldArr[i]] = []
}
}
//
let nowShowingDefaultHideFieldArr = defaultHideFields.filter(a => !hideFieldArr.includes(a))
console.log("(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((())))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))")
console.log(nowShowingDefaultHideFieldArr)
//for(let i = 0;i< nowShowingDefaultHideFieldArr.length; i++){
//conditionfield,x-1,x-1field,hideFieldArr
//if()
//}
/* //根据条件的生效情况从隐藏数组中过滤字段
for(let i = 0;i< radioSelectArr3.length;i++){
for(let j = 0; j< modelKeyArr.length;j++){
if(modelKeyArr[j]==radioSelectArr3[i].conditionFieldKey){
//console.log("modelKeyArr[j]========="+modelKeyArr[j]+"modelKeyArr[j]===="+model.value[modelKeyArr[j]])
//console.log("radioSelectArr3[i].conditionFieldKey========="+radioSelectArr3[i].conditionFieldKey+"conditionFieldValue======"+radioSelectArr3[i].conditionFieldValue)
//
if(radioSelectArr3[i].conditionFieldValue == model.value[modelKeyArr[j]]){
console.log("当前的值==="+model.value[modelKeyArr[j]])
console.log("modelKeyArr[j]==="+modelKeyArr[j])
console.log("作为条件的字段的设定条件值radioSelectArr3[i]==="+radioSelectArr3[i].conditionFieldValue)
console.log(radioSelectArr3[i].toShowFieldKey)
//hideFieldArr = hideFieldArr.filter( item => radioSelectArr3[i].toShowFieldKey.find((bItem: any) => item != bItem))
for(let n = 0; n < hideFieldArr.length; n++){
for(let m = 0; m < radioSelectArr3[i].toShowFieldKey.length; m++){
if(hideFieldArr[n] == radioSelectArr3[i].toShowFieldKey[m]){
hideFieldArr.splice(n,1);
}
}
}
}
}
}
} */
/* const radioSelectArr4:any[] = []
//
for(let i = 0;i < radioSelectArr3.length;i++){
//console.log(radioSelectArr3[i].conditionFieldKey)
for(let j = 0;j < hideFieldArr.length;j++){
//conditionFieldKey,radioSelectArr4
if(radioSelectArr3[i].conditionFieldKey == hideFieldArr[j]){
console.log("radioSelectArr3[i].conditionFieldKey============="+radioSelectArr3[i].conditionFieldKey)
console.log("hideFieldArr[j]=================================="+hideFieldArr[j])
radioSelectArr4.push(radioSelectArr3[i])
console.log("radioSelectArr3[i]============="+JSON.stringify(radioSelectArr3[i]))
}
}
}
console.log(radioSelectArr4)
for(let i = 0;i < radioSelectArr4.length;i++){
//conditionFieldKey
//
console.log("radioSelectArr4[i]============="+JSON.stringify(radioSelectArr4[i]))
} */
console.log("条件筛选过后最终要隐藏的字段-----"+hideFieldArr)
//
for(let i = 0; i< hideFieldArr.length;i++){
//console.log(i+"dsfafdasdfasfsda===="+hideFieldArr[i]+"=====jiuopfdsahokjuhuiofadshuiofadsjbknfdjisahuifhjken wij================"+model.value[hideFieldArr[i]])
if(typeof model.value[hideFieldArr[i]] === "string" || typeof model.value[hideFieldArr[i]] === "number"){
model.value[hideFieldArr[i]] = ""
}else if( model.value[hideFieldArr[i]] instanceof Array){
model.value[hideFieldArr[i]] = []
}
}
//
if(formProps.value.type!=5){
props.formData.config.hideField?.push(...hideFieldArr)

Loading…
Cancel
Save