甘特图组件,有点改炸了
This commit is contained in:
27
components/Gantt/core/Interaction.js
Normal file
27
components/Gantt/core/Interaction.js
Normal file
@@ -0,0 +1,27 @@
|
||||
// Interaction:交互控制器,处理用户交互逻辑,输出标准化事件
|
||||
export default class Interaction {
|
||||
constructor(dataManager, timeCalculator) {
|
||||
this.dataManager = dataManager;
|
||||
this.timeCalculator = timeCalculator;
|
||||
}
|
||||
// 处理拖拽开始
|
||||
handleDragStart(taskId) {
|
||||
// 可扩展:记录初始状态
|
||||
}
|
||||
// 处理拖拽过程
|
||||
handleDragUpdate(taskId, newDate) {
|
||||
// 校验新日期是否合法,可扩展
|
||||
this.dataManager.updateTask(taskId, { start: newDate });
|
||||
}
|
||||
// 处理拖拽结束
|
||||
handleDragEnd(taskId, newDate) {
|
||||
// 最终更新数据
|
||||
this.dataManager.updateTask(taskId, { start: newDate });
|
||||
}
|
||||
// 处理维度切换
|
||||
handleSwitchDimension(dim) {
|
||||
// 重新分组并通知视图层
|
||||
this.dataManager.dimensions = [dim];
|
||||
this.dataManager.notify();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user