Vue2 实现可拖拽甘特图(基于Element-UI的Gantt图)
项目简介
本项目源于企业级应用的实际需求,旨在开发一个功能全面、易用且免费的可拖拽甘特图表解决方案。在面对市场上付费且缺乏详尽中文文档的难题时,我们深入调研了多个开源示例,整合并优化了各项功能,最终打造出这个适用于项目排期管理的甘特图组件。本组件集成了Element-UI,确保了良好的用户交互体验和界面一致性。
核心特性
- 拖拽功能:支持时间块的上、下、左、右拖动,灵活调整任务区间。
- 自动排序:拖动后自动排序时间块,智能处理任务间的重叠关系。
- 时间轴选择:通过Element-UI的日期时间选择器,精确设定任务时间。
- 搜索定位:快速查找任务,直接跳转至目标时间段。
- 新建任务:利用弹框与表单轻松创建新的排期任务。
- 右键菜单:对时间块执行快捷操作,如查看、编辑、移除等。
- 撤销功能:记录每一次删除或移动操作,一键撤回到上一步。
- 批量操作:允许用户批量更改任务状态,操作确认后统一保存至后台。
技术栈
- Vue.js 2.x
- Element-UI
- JavaScript ES6+
- CSS3 / SCSS (用于样式定制)
快速开始
- 克隆此仓库到本地:
git clone https://github.com/your-repo-url.git
- 安装依赖:
npm install
- 运行项目:
npm run serve
项目将自动开启本地服务器供你预览和测试。
文档与贡献
尽管该项目主要以代码示例为主,我们会持续补充说明文档,帮助开发者更快地上手和二次开发。欢迎社区贡献代码、提交问题或建议,一起完善这个工具。
此项目为解决实际业务痛点而生,希望能够为同样面临类似挑战的开发者们提供便利。如果您有任何问题或想要参与改进,请随时联系我们。让我们共同推动前端技术在项目管理领域的发展。