Browse Source

分组:处理多个form数据不显示的问题

qin_s5
han2015 4 weeks ago
parent
commit
260fc95ee0
  1. 36
      src/components/DesignForm/app/groupPage.vue
  2. 2
      src/components/DesignForm/app/index.vue

36
src/components/DesignForm/app/groupPage.vue

@ -60,7 +60,6 @@ const onUpdateSort = (data: { prop: string; order: "ascending" | "descending" |
columnSortData.delete(data.prop);
}
selectedMergeKeys.value=Array.from(columnSortData.keys())
getPageData();
}
@ -68,7 +67,7 @@ const onUpdateSort = (data: { prop: string; order: "ascending" | "descending" |
const spanMap = computed(() => {
const map = {}
const pos = {}
selectedMergeKeys.value=Array.from(columnSortData.keys())
//
selectedMergeKeys.value.forEach((key, index) => {
map[key] = []
@ -152,19 +151,39 @@ const getPageData=async ()=>{
})
}
const tableChildren = (field:string,dataList:any) => {
let jieguo = ""
if(Array.isArray(dataList)){
dataList.forEach((item) => {
if(typeof(item)=="object"){
for (let key in item) {
if (field == key){
if(jieguo!=""){
jieguo = jieguo+"<div style='width: 100%;height: 1px;border-bottom: 1px solid #EBEEF5; margin: 8px 0;'></div>"+item[key]
}else{
jieguo = item[key]
}
}
}
}
})
}
return jieguo
}
onMounted(()=>{
columnSortData.clear()
//
if(props.viewSetup.form.title&&props.viewSetup.form.title.length){
props.viewSetup.form.title.forEach(ele => {
if(props.viewSetup.form.sort==2){
columnSortData.set(ele, "");
}else{
columnSortData.set(ele,'DESC'); //asc
columnSortData.set(ele,'DESC'); //desc
}
});
selectedMergeKeys.value=Array.from(columnSortData.keys())
}
nextTick(()=>{
getPageData()
@ -175,7 +194,6 @@ defineExpose({
groupColumnSearch
})
</script>
<template>
<div id="special-table-container">
@ -225,9 +243,9 @@ defineExpose({
>
<template #default="scope">
<template v-for="sunItem in item.children" v-if="item.pattern == 'table'">
<el-table-column v-if="sunItem.fieldClass == ''" :prop="sunItem.field" :label="sunItem.label" header-align="center" align="center" :min-width="readerColumnSun(sunItem)">
<el-table-column v-if="sunItem.fieldClass == ''" :prop="sunItem.field" :label="sunItem.label" header-align="center" align="center" :min-width="(sunItem.label?.length || 2) * 15 + 30">
<template #default="scopeChilder">
{{scopeChilder.row[item.field]}}
<div v-html="tableChildren(sunItem.field,scopeChilder.row[item.field])"></div>
</template>
</el-table-column>
</template>

2
src/components/DesignForm/app/index.vue

@ -966,6 +966,7 @@ watch(
watch(
() => props.formId,
(val: any) => {
searchSend.formId=props.formId;
tabsView(props.viewPage.list, 1)
getPageData();
},
@ -1030,7 +1031,6 @@ const getPageData = () => {
break;
case 8: //group
nextTick(() => {
console.log("获取列表详细信息-------222---------->??????",);
groupPageRef.value.groupColumnSearch(sendData, 1);
});
break;

Loading…
Cancel
Save