vue插件之甘特图

vue插件之甘特图

甘特图

  1. 下载包

npm install dhtmlx-gantt --save

  1. 创建Gantt.vue文件
<template>
  <div ref="gantt"></div>
</template>

<script>
import 'dhtmlx-gantt'
export default {
  name: 'gantt',
  props: {
    tasks: {
      type: Object,
      default () {
        return {data: [], links: []}
      }
    }
  },

  mounted: function () {
    gantt.init(this.$refs.gantt)
    gantt.parse(this.$props.tasks)
  }
}
</script>

<style>
    @import "dhtmlx-gantt/codebase/dhtmlxgantt.css";
</style>

在需要的甘特图vue文件中写入以下代码

<template>
  <div class="container">
    <gantt class="left-container" :tasks="tasks"></gantt>
  </div>
</template>

<script>
import Gantt from './components/Gantt.vue';

export default {
  name: 'app',
  components: {Gantt},
  data () {
    return {
      tasks: {
        data: [
        {
			text: 'Test001-001',//任务名
			start_date: '19-04-2017',//开始时间
			id: 1,//任务id
			duration: 13,//任务时长,从start_date开始计算
			progress: 0.6,//任务完成情况,进度
			parent: 2,//父任务ID
			user: "李四",//成员
			planned_end:'19-04-2017', //计划开始时间
			planned_start:'10-04-2017',//计划结束时间
			show:false,
			open: true,//默认是否打开
			type: 'project'// gantt.config.types.milestone为里程碑类型
			        // project为项目任务类型,也就是摘要任务,
			        // task为普通任务类型
			},
          {id: 2, text: 'Task #1', start_date: '15-04-2017', duration: 3, progress: 0.6},
          {id: 3, text: 'Task #2', start_date: '18-04-2017', duration: 3, progress: 0.4}
        ],
        links: [// links为任务之间连接的线
          {id: 1, source: 1, target: 2, type: '0'}//source根源 target目标 也就是从id为1的指向id为2的
        //type:'0'是从1任务完成到2任务开始,type:'1'是1任务开始到2任务开始,
        //type:'2'是从1任务完成到2任务完成,type:'3'是从1任务开始到2任务完成
        ]
      },
    }
  }
}
</script>

当然,每一个项目对应的甘特图都有自己的样式,希望自己慢慢修改。

  • 7
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
### 回答1: 基于Vue的条形甘特图是通过使用Vue.js框架来实现的一种可视化工具,用于展示任务进度和时间表。在这种甘特图中,每个任务被表示为一条横向的条形,在整个工作流程中呈现顺序,代表任务的持续时间。 在Vue中,常用的条形甘特图件有gantt-chart、VueGantt和vue2-gantt,它们通过简单的数据输入,即可自动生成甘特图。其中,gantt-chart可以在没有依赖关系的情况下直接使用,而VueGantt和vue2-gantt则提供了更多的数据和样式自定义选项。 条形甘特图可以用于跟踪项目计划的进度,管理资源和时间表,以及确定项目中存在的潜在问题。通过在Vue中使用条形甘特图,用户可以更轻松地处理大量数据,并在界面上动态地显示关键信息。 总之,基于Vue的条形甘特图是一种可视化工具,可帮助用户跟踪和管理项目任务进度和时间表,从而更好地规划和组织项目。在Vue中使用这种甘特图件可以帮助用户更有效地处理数据和信息,并将其转化为具有意义的可视化展示。 ### 回答2: 基于Vue的条形甘特图是一个直观且动态的数据展示工具,使用Vue框架可以构建一个可复用的组件来实现该功能。 在这个组件中,首先需要定义一个数据格式,以便展示一个进度条,通常包含以下几个关键字段: - 名称:条形甘特图中每个任务或事件的名称; - 开始时间:任务或事件的开始时间; - 结束时间:任务或事件的结束时间; - 进度:当前任务或事件的完成进度。 在Vue组件中,可以使用v-for指令循环渲染所有的任务或事件,并根据数据中定义的时间段计算出每个任务或事件所在的位置和长度。同时,根据任务或事件的进度,可以添加不同颜色的进度条以表示当前任务或事件完成的程度。 除此之外,还可以根据需要添加更多的交互功能,例如:鼠标悬停时展示任务或事件的详细信息、点击某个任务或事件时跳转到相应的详情页等。 总之,基于Vue的条形甘特图是一个灵活、可定制且易于扩展的数据可视化工具,可以帮助用户有效展示项目进度和时间安排,提高工作效率和管理效果。 ### 回答3: 基于Vue的条形甘特图是一种新型的控件,它是Vue.js框架中的一种组件,可以快速、简便地构建出一个好看而且功能强大的甘特图甘特图可以有效地帮助我们管理项目进度和时间,更好地规划和安排工作计划和资源,提高工作效率。Vue的条形甘特图将这种特性和优势添加到了Web应用程序中。 这种甘特图通过多个条形来表示不同的任务或进程的时间量,这些条形放置在时间轴上,可以更好地展示出项目的进度和时间,用户可以通过甘特图更好地了解项目进展情况,了解各个任务的完成程度,更好地规划和安排工作。基于Vue的条形甘特图还支持显示进度百分比,时间刻度可以自定义,可以添加标签和标题等,非常方便和实用。 总之,基于Vue的条形甘特图是一种非常方便和实用的控件,可以帮助开发人员更好地管理和规划项目进度和时间,提高工作效率和项目成功率,非常值得尝试和使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值