提交 7f2fc6e8 编写于 作者: Cano1997's avatar Cano1997

update: 表格列头支持提示信息

上级 b99c0938
......@@ -9,7 +9,7 @@ import {
} from '@ibiz-template/model';
import { ControlVO } from '@ibiz-template/service';
import { clone } from 'ramda';
import { computed, ref } from 'vue';
import { computed, CreateElement, ref } from 'vue';
export function generateColumnData(column: GridColumnModel, c: GridController) {
const columnChildren: IData[] = [];
......@@ -98,13 +98,43 @@ export function useITableColumns(c: GridController) {
if (c.hiddenColumnKeys.includes(item.key)) {
return false;
}
if (item.children && item.children.length) {
item.children = getVisibleColumns(item.children);
if (item.columnType === 'GROUPGRIDCOLUMN') {
if (item.children && item.children.length) {
item.children = getVisibleColumns(item.children);
} else {
return false;
}
}
return true;
});
};
const renderHeader = (h: CreateElement, args: IData) => {
const { column } = args;
const { tooltip } = column.userParams || {};
const content = h(
'i-tooltip',
{ props: { transfer: true, content: tooltip } },
[h('i', { class: 'ivu-icon ivu-icon-ios-help-circle-outline' })],
);
return h('span', [column.title, content]);
};
const calcColumnTooltip = (column: IData) => {
if (column.columnType === 'GROUPGRIDCOLUMN') {
const children = column.children || [];
children.forEach((child: IData) => {
calcColumnTooltip(child);
});
} else {
const { tooltip } = column.userParams || {};
if (tooltip) {
column.renderHeader = renderHeader;
}
}
};
// 实际iview使用的columns
const columns = computed(() => {
// 先浅拷贝
......@@ -157,6 +187,7 @@ export function useITableColumns(c: GridController) {
if (c.controlParams.ENABLEGRIDROWBREAK) {
column.ellipsis = c.controlParams.ENABLEGRIDROWBREAK !== 'TRUE';
}
calcColumnTooltip(column);
});
return copy;
});
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册