全部用静态导入
This commit is contained in:
@@ -3,8 +3,8 @@
|
||||
* 统一管理所有组件的拖拽状态,提供拖拽历史、性能监控、冲突检测等功能
|
||||
*/
|
||||
|
||||
import { eventBus } from '../eventBus.js';
|
||||
import { GLOBAL_EVENT_TYPES, globalEventActions } from './GlobalEventManager.js';
|
||||
import { eventBus } from '../eventBus';
|
||||
import { GLOBAL_EVENT_TYPES, globalEventActions } from './GlobalEventManager';
|
||||
|
||||
// 拖拽状态类型
|
||||
export const DRAG_STATE_TYPES = {
|
||||
@@ -520,6 +520,11 @@ class DragStateManager {
|
||||
* 注册事件监听器
|
||||
*/
|
||||
_registerEventListeners() {
|
||||
// 防止重复注册监听器
|
||||
if (this.eventListenersRegistered) {
|
||||
return;
|
||||
}
|
||||
|
||||
const dragEvents = [
|
||||
// Panel拖拽事件
|
||||
'panel.drag.start', 'panel.drag.move', 'panel.drag.end', 'panel.drag.cancel',
|
||||
@@ -535,6 +540,36 @@ class DragStateManager {
|
||||
deduplication: { type: 'EVENT_BASED', key: 'dragState' }
|
||||
});
|
||||
});
|
||||
|
||||
this.eventListenersRegistered = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 销毁管理器
|
||||
*/
|
||||
destroy() {
|
||||
// 清理事件监听器
|
||||
const dragEvents = [
|
||||
// Panel拖拽事件
|
||||
'panel.drag.start', 'panel.drag.move', 'panel.drag.end', 'panel.drag.cancel',
|
||||
// TabPage拖拽事件
|
||||
'tabpage.drag.start', 'tabpage.drag.move', 'tabpage.drag.end', 'tabpage.drag.cancel',
|
||||
// Area拖拽事件
|
||||
'area.drag.start', 'area.drag.move', 'area.drag.end', 'area.drag.cancel'
|
||||
];
|
||||
|
||||
dragEvents.forEach(eventType => {
|
||||
eventBus.off(eventType, this._onDragEvent);
|
||||
});
|
||||
|
||||
// 清理清理调度器
|
||||
this._stopCleanupScheduler();
|
||||
|
||||
// 清理拖拽状态
|
||||
this.dragStates.clear();
|
||||
this.dragHistory = [];
|
||||
|
||||
console.log('🗑️ 拖拽状态管理器已销毁');
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user