动态列成果展示

This commit is contained in:
ChenYi 2025-07-10 11:47:50 +08:00
parent 30a92b8211
commit 40e26fbfe6

View File

@ -30,8 +30,8 @@ const fixedColumns = [
//
];
//
const allColumns = ref([
// - 使
const allColumns = computed(() => [
...fixedColumns,
...dynamicColumns.value,
]);
@ -73,12 +73,13 @@ const formOptions: VbenFormProps = {
}
},
};
const gridOptions: VxeGridProps<any> = {
checkboxConfig: {
highlight: true,
labelField: 'name',
},
columns: allColumns,
columns: allColumns, // 使
height: 'auto',
keepSource: true,
pagerConfig: {
@ -98,17 +99,6 @@ const gridOptions: VxeGridProps<any> = {
proxyConfig: {
ajax: {
query: async ({ page }, formValues) => {
const { data } = await postTreeModelDeviceDataInfoPage({
body: {
...formValues,
pageIndex: page.currentPage,
pageSize: page.pageSize,
DeviceType,
DeviceId,
FocusAddress,
},
});
console.log('=== API调用开始 ===');
console.log('请求参数:', { page, formValues, DeviceType, DeviceId, FocusAddress });
@ -151,29 +141,33 @@ const gridOptions: VxeGridProps<any> = {
const generatedColumns = generateDynamicColumns(items);
console.log('生成的列定义:', generatedColumns);
//
dynamicColumns.value = generatedColumns;
//
allColumns.value = [
...fixedColumns,
...generatedColumns,
];
//
await nextTick();
//
dynamicColumns.value = generatedColumns;
// totalCount
const result = {
items: data.items || [],
totalCount: data.totalCount || (data.items ? data.items.length : 0),
};
console.log('返回给表格的数据:', result);
return result;
// 使setStategridOptions
await nextTick();
gridApi.setState({
gridOptions: {
...gridOptions,
columns: allColumns.value,
},
});
// totalCount
// APItotalCount使items
const result = {
items: data.items || [],
totalCount: data.items ? data.items.length : 0,
};
console.log('返回给表格的数据:', result);
return result;
}
console.log('没有数据或数据为空');
return data;
return {
items: [],
totalCount: 0,
};
} catch (error) {
console.error('API调用出错:', error);
throw error;