diff --git a/packages/pro/table/src/contents/LayoutToolTree.tsx b/packages/pro/table/src/contents/LayoutToolTree.tsx index 4d0e3f38f..f6632cdd9 100644 --- a/packages/pro/table/src/contents/LayoutToolTree.tsx +++ b/packages/pro/table/src/contents/LayoutToolTree.tsx @@ -56,7 +56,8 @@ export default defineComponent({ props.onDrop!(key, columns) } - const onFixedChange = (fixed: 'start' | 'end' | undefined, column: ProTableColumn) => { + const onFixedChange = (fixed: 'start' | 'end' | undefined, column: ProTableColumn, evt: MouseEvent) => { + evt.preventDefault() column.fixed = fixed loopColumns(column.children, child => { child.fixed = fixed @@ -79,6 +80,7 @@ export default defineComponent({ cascaderStrategy: 'all', checkable: true, checkedKeys: checkedKeys.value, + checkOnClick: true, draggable: true, dataSource, disabled: disableColumn, @@ -101,24 +103,37 @@ export default defineComponent({ const { fixed } = node if (fixed === 'start') { return [ - onFixedChange(undefined, node)} />, + onFixedChange(undefined, node, evt)} + />, onFixedChange('end', node)} + onClick={evt => onFixedChange('end', node, evt)} />, ] } if (fixed === 'end') { return [ - onFixedChange('start', node)} />, - onFixedChange(undefined, node)} />, + onFixedChange('start', node, evt)} />, + onFixedChange(undefined, node, evt)} + />, ] } return [ - onFixedChange('start', node)} />, - onFixedChange('end', node)} />, + onFixedChange('start', node, evt)} />, + onFixedChange('end', node, evt)} + />, ] }, }