Vue2 实现可拖拽甘特图基于ElementUI的Gantt图

2021-07-07

Vue2 实现可拖拽甘特图(基于Element-UI的Gantt图)

项目简介

本项目源于企业级应用的实际需求,旨在开发一个功能全面、易用且免费的可拖拽甘特图表解决方案。在面对市场上付费且缺乏详尽中文文档的难题时,我们深入调研了多个开源示例,整合并优化了各项功能,最终打造出这个适用于项目排期管理的甘特图组件。本组件集成了Element-UI,确保了良好的用户交互体验和界面一致性。

核心特性

  1. 拖拽功能:支持时间块的上、下、左、右拖动,灵活调整任务区间。
  2. 自动排序:拖动后自动排序时间块,智能处理任务间的重叠关系。
  3. 时间轴选择:通过Element-UI的日期时间选择器,精确设定任务时间。
  4. 搜索定位:快速查找任务,直接跳转至目标时间段。
  5. 新建任务:利用弹框与表单轻松创建新的排期任务。
  6. 右键菜单:对时间块执行快捷操作,如查看、编辑、移除等。
  7. 撤销功能:记录每一次删除或移动操作,一键撤回到上一步。
  8. 批量操作:允许用户批量更改任务状态,操作确认后统一保存至后台。

技术栈

  • Vue.js 2.x
  • Element-UI
  • JavaScript ES6+
  • CSS3 / SCSS (用于样式定制)

快速开始

  1. 克隆此仓库到本地:
    git clone https://github.com/your-repo-url.git
    
  2. 安装依赖:
    npm install
    
  3. 运行项目:
    npm run serve
    

项目将自动开启本地服务器供你预览和测试。

文档与贡献

尽管该项目主要以代码示例为主,我们会持续补充说明文档,帮助开发者更快地上手和二次开发。欢迎社区贡献代码、提交问题或建议,一起完善这个工具。


此项目为解决实际业务痛点而生,希望能够为同样面临类似挑战的开发者们提供便利。如果您有任何问题或想要参与改进,请随时联系我们。让我们共同推动前端技术在项目管理领域的发展。

下载链接

Vue2实现可拖拽甘特图基于Element-UI的Gantt图