fix: Fix the problem that the table setting menu cannot be dragged (#1503)
This commit is contained in:
parent
0dafaa5972
commit
a2b594c962
|
|
@ -117,14 +117,16 @@
|
||||||
import { useI18n } from '/@/hooks/web/useI18n';
|
import { useI18n } from '/@/hooks/web/useI18n';
|
||||||
import { useTableContext } from '../../hooks/useTableContext';
|
import { useTableContext } from '../../hooks/useTableContext';
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
import { useSortable } from '/@/hooks/web/useSortable';
|
// import { useSortable } from '/@/hooks/web/useSortable';
|
||||||
import { isFunction, isNullAndUnDef } from '/@/utils/is';
|
import { isFunction, isNullAndUnDef } from '/@/utils/is';
|
||||||
import { getPopupContainer as getParentContainer } from '/@/utils';
|
import { getPopupContainer as getParentContainer } from '/@/utils';
|
||||||
import { cloneDeep, omit } from 'lodash-es';
|
import { cloneDeep, omit } from 'lodash-es';
|
||||||
|
import Sortablejs from 'sortablejs';
|
||||||
|
import type Sortable from 'sortablejs';
|
||||||
|
|
||||||
interface State {
|
interface State {
|
||||||
checkAll: boolean;
|
checkAll: boolean;
|
||||||
isInit: boolean;
|
isInit?: boolean;
|
||||||
checkedList: string[];
|
checkedList: string[];
|
||||||
defaultCheckList: string[];
|
defaultCheckList: string[];
|
||||||
}
|
}
|
||||||
|
|
@ -158,7 +160,7 @@
|
||||||
let inited = false;
|
let inited = false;
|
||||||
|
|
||||||
const cachePlainOptions = ref<Options[]>([]);
|
const cachePlainOptions = ref<Options[]>([]);
|
||||||
const plainOptions = ref<Options[]>([]);
|
const plainOptions = ref<Options[] | any>([]);
|
||||||
|
|
||||||
const plainSortOptions = ref<Options[]>([]);
|
const plainSortOptions = ref<Options[]>([]);
|
||||||
|
|
||||||
|
|
@ -267,9 +269,9 @@
|
||||||
});
|
});
|
||||||
setColumns(checkedList);
|
setColumns(checkedList);
|
||||||
}
|
}
|
||||||
|
|
||||||
let sortable = null;
|
let sortable: Sortable;
|
||||||
let sortableOrder = [];
|
let sortableOrder: string[] = [];
|
||||||
// reset columns
|
// reset columns
|
||||||
function reset() {
|
function reset() {
|
||||||
state.checkedList = [...state.defaultCheckList];
|
state.checkedList = [...state.defaultCheckList];
|
||||||
|
|
@ -289,7 +291,7 @@
|
||||||
const el = columnListEl.$el as any;
|
const el = columnListEl.$el as any;
|
||||||
if (!el) return;
|
if (!el) return;
|
||||||
// Drag and drop sort
|
// Drag and drop sort
|
||||||
sortable = Sortable.create(unref(el), {
|
sortable = Sortablejs.create(unref(el), {
|
||||||
animation: 500,
|
animation: 500,
|
||||||
delay: 400,
|
delay: 400,
|
||||||
delayOnTouchOnly: true,
|
delayOnTouchOnly: true,
|
||||||
|
|
@ -348,7 +350,7 @@
|
||||||
if (isFixed && !item.width) {
|
if (isFixed && !item.width) {
|
||||||
item.width = 100;
|
item.width = 100;
|
||||||
}
|
}
|
||||||
table.setCacheColumnsByField?.(item.dataIndex, { fixed: isFixed });
|
table.setCacheColumnsByField?.(item.dataIndex as string, { fixed: isFixed });
|
||||||
setColumns(columns);
|
setColumns(columns);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue