Browse Source

表格优化提交

main
likunming 6 months ago
parent
commit
e1db4ab92d
  1. 46
      io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue

46
io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue

@ -348,21 +348,21 @@ watch(
tableColumns.value = columnDefaultProps(rawColumns.value);
table.columns = tableColumns.value;
if (tableColumns.value && tableColumns.value.length > rawColumns.value.length) {
headerRef?.value?.handlerMoreRowColumnTitle();
headerRef.value?.handlerMoreRowColumnTitle();
}
},
);
eventBus.on('onLocaleChanged', (local) => {
nextTick(() => {
topRef.value.handlerQueryFormShowField();
topRef.value.setLocaleFlag();
topRef.value?.handlerQueryFormShowField();
topRef.value?.setLocaleFlag();
table.columns = tableColumns.value;
// label
topRef.value.resetLabel();
topRef.value.handleToolbarActions();
topRef.value?.resetLabel();
topRef.value?.handleToolbarActions();
// label
editorRef.value.resetButtonLabel();
editorRef.value?.resetButtonLabel();
stickyHeaderColumn();
});
});
@ -578,7 +578,7 @@ const rowClick = (evt: any, row: any, index: any) => {
}
row[table.selectedField] = true;
row[table.tickedField] = true;
bodyRef.value.allTickedStatus();
bodyRef.value?.allTickedStatus();
if (props.onRowClick) {
emit('rowClick', evt, row, index);
}
@ -589,16 +589,16 @@ const rowDbClick = (evt, row, index) => {
if (props.onRowDbClick) {
emit('rowDbClick', evt, row, index);
} else if (props.dbClickOperation === 'view') {
viewRef.value.view();
viewRef.value?.view();
} else {
topRef.value.dbClickOperation(row);
topRef.value?.dbClickOperation(row);
}
}
};
const onResize = () => {
onResizeRef.value = !onResizeRef.value;
topRef.value.handlerQueryFormShowField();
topRef.value?.handlerQueryFormShowField();
if (tableRef.value) {
state.refHeightWidth.yLocation = tableRef.value.$el.getBoundingClientRect().y;
if (tableRef.value.$el.getElementsByClassName('noDataTr').length > 0) {
@ -643,7 +643,7 @@ const buildQueryCriterias = (reqParams) => {
if (Object.keys(queryCriteria).length > 0) {
urlSearchParams.append('criteria', JSON.stringify(queryCriteria));
}
const queryForm = topRef.value.getQueryForm();
const queryForm = topRef.value?.getQueryForm();
if (queryForm) {
nextTick(() => {
const queryFormData = queryForm.getData();
@ -1001,7 +1001,7 @@ const stickyHeaderColumn = (time = 500) => {
const tableDom = tableRef.value.$el.getElementsByTagName('table')[0];
if (table.stickyNum > 0) {
if (headerRef.value.getColumnTitleState().columnTitleRowNum > 1) {
if (headerRef.value?.getColumnTitleState()?.columnTitleRowNum > 1) {
const theadDom = tableDom.getElementsByTagName('thead')[0];
const theadTrDom = theadDom.getElementsByTagName('tr');
tableDom.style.setProperty('--columnWidth' + '-' + 0 + '-' + 0, 0 + 'px');
@ -1124,14 +1124,14 @@ watchEffect(() => {
const tableClassComputed = computed(() => {
const classArr = <string[]>['sticky-header-column-table'];
if (table.stickyNum && table.stickyNum > 0) {
if (headerRef.value.getColumnTitleState().columnTitleRowNum > 1) {
if (headerRef.value?.getColumnTitleState()?.columnTitleRowNum > 1) {
//
const stickyColumn = rawColumns.value.filter((item, index) => {
return index < table.stickyNum;
});
let tdNum = excludeColumnNum.value;
stickyColumn.forEach((item: any, index: number) => {
tdNum += headerRef.value.getMoreColumnTitleMap().get(item.name)!.colspan;
tdNum += headerRef.value?.getMoreColumnTitleMap()?.get(item.name)?.colspan;
});
//
if (tdNum > 0) {
@ -1198,9 +1198,9 @@ const updates = (data, callback) => {
onMounted(() => {
if (tableColumns.value && tableColumns.value.length > rawColumns.value.length) {
headerRef.value.handlerMoreRowColumnTitle();
headerRef.value?.handlerMoreRowColumnTitle();
}
topRef.value.handlerQueryFormShowField();
topRef.value?.handlerQueryFormShowField();
if (props.autoFetchData) {
onRequest({
pagination: state.pagination,
@ -1211,19 +1211,19 @@ onMounted(() => {
});
const getQueryForm = () => {
return topRef.value.getQueryForm();
return topRef.value?.getQueryForm();
};
const getEditorDialog = () => {
return editorRef.value.getDialog();
return editorRef.value?.getDialog();
};
const getEditorForm = () => {
return editorRef.value.getForm();
return editorRef.value?.getForm();
};
const getViewerDrawer = () => {
return viewRef.value.getViewerDrawer();
return viewRef.value?.getViewerDrawer();
};
const getViewerPanel = () => {
return viewRef.value.getInfoPanel();
return viewRef.value?.getInfoPanel();
};
const setQueryCriteria = (criteria) => {
queryCriteria = criteria;
@ -1348,11 +1348,11 @@ const getCascadeParents = (propertyName: string) => {
};
const edit = (selected) => {
topRef.value.edit(selected);
topRef.value?.edit(selected);
};
const view = () => {
viewRef.value.view();
viewRef.value?.view();
};
const getElement = () => {

Loading…
Cancel
Save