Vue实现简单可扩展甘特图的方法详解

 更新时间:2022年11月02日 10:44:50   作者:Jovie  
Ganttastic是一个小型的Vue.js组件,用于在Web应用程序上呈现一个可配置的、可拖动的甘特图。本文就将用它来实现简单可扩展的甘特图,感兴趣的可以尝试一下

Ganttastic是一个小型的Vue.js组件,用于在Web应用程序上呈现一个可配置的、可拖动的甘特图。

特点

  • 时间网格
  • 悬停时突出显示行。
  • 显示/隐藏时间轴。
  • 自定义样式和主题。

基本使用方法

1.安装后导入Ganttastic组件。

import {GGanttChart, GGanttBar} from 'vue-ganttastic'

2.将该组件添加到模板中,并为甘特图定义你的数据。

<g-gantt-chart
  chart-start="2020-03-01 00:00"
  chart-end="2020-03-03 00:00"
>
  <g-gantt-row label="My row #1"/>
  <g-gantt-row label="My row #2"/>
  <g-gantt-row label="My row #3"/>
  ...
</g-gantt-chart>
export default {
  ...
  components:{
    GGanttChart,
    GGanttBar
  },
  data(){
    return{
      myChartStart: "2020-03-01 00:00"
      myChartEnd: "2020-03-02 00:00"
      myBars: [
        {
          myBarStart: "2020-03-01 01:30",
          myBarEnd: "2020-03-01 06:00"
        },
        {
          myBarStart: "2020-03-01 15:10",
          myBarEnd: "2020-03-01 20:00"
        }
      ]
    }
  }
  ...
}

3.可用道具来配置甘特图。

// start date
chartStart: {type: String, default: moment().startOf("day").format("YYYY-MM-DD HH:mm:ss")},

// end date
chartEnd: {type: String, default: moment().startOf("day").add(12,"hours").format("YYYY-MM-DD HH:mm:ss")},

// hide or show time axis
hideTimeaxis: Boolean,

// width of row labels
rowLabelWidth: {type: String, default: "10%"},

// row height
rowHeight: {type: Number, default: 40},

// local
locale: {type: String, default: "en"},

// theme name
theme: String,

// show or hide time grid
grid: Boolean,

// an array of highlighted hours
highlightedHours: {type: Array, default: () => []},

// the total width of the entire ganttastic component in %
width: {type: String, default: "100%"},

// pusn on overlap
pushOnOverlap: {type: Boolean},

// snap background on overlap
snapBackOnOverlap: {type: Boolean},

//  minimum gap between bars
minGapBetweenBars: {
  type: Number,
  default: 0
}

预览

更新日志

v2.1.1 (09/21/2022)

  • 为图书馆用户提供了公开的类型
  • 用新的可组合的 "useContext "提供上下文
  • 修正了一些小的类型问题
  • 更新了样式。
  • 对范围值使用了正确的字体字符
  • 使用数字字体变体,使日期总是占用相同的宽度
  • 调整了getRowsInChart和getChartRows的措辞

v2.0.5 (07/24/2022)

增加了 "点击栏 "事件

v2.0.4 (05/08/2022)

错误修正

v2.0.2 (02/05/2022)

错误修正

v2.0.1 (01/08/2022)

修复:当chartart/chartEnd改变时,条形图重新定位

v2.0.0 (01/05/2022)

添加vue 3支持。

v0.9.32 (01/13/2021)

当在甘特图行上拖动一个HTML元素时,悬停时的高亮效果。

v0.9.30 (01/11/2021)

增加了指定条形图之间最小间隙的道具,以分钟为单位。

v0.9.23 (07/02/2020)

修复:计算拖动限制时不考虑pushOnOverlap: false的条形图

v0.9.15 (06/16/2020)

  • 修正了当不动条与即将被拖动的条的距离为0像素时的错误
  • 不动条现在也会发出mousedown事件(但它们不能被拖动)。
  • 开始处理特殊的 "阴影 "条
  • 更新了NPM包的版本

The postSimple Draggable Gantt Chart For Vue - Ganttasticappeared first onVue Script.

到此这篇关于Vue实现简单可扩展甘特图的方法详解的文章就介绍到这了,更多相关Vue甘特图内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue使用axios post方式将表单中的数据以json格式提交给后端接收操作实例

    Vue使用axios post方式将表单中的数据以json格式提交给后端接收操作实例

    这篇文章主要介绍了Vue使用axios post方式将表单中的数据以json格式提交给后端接收操作,结合实例形式分析了vue基于axios库post传送表单json格式数据相关操作实现技巧与注意事项,需要的朋友可以参考下
    2023-06-06
  • 基于Vue和Element-Ui搭建项目的方法

    基于Vue和Element-Ui搭建项目的方法

    这篇文章主要介绍了基于Vue和Element-Ui搭建项目的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • Vue中自定义全局组件的实现方法

    Vue中自定义全局组件的实现方法

    这两天学习了Vue.js 感觉组件这个地方知识点挺多的,而且很重要,所以这篇文章主要给大家介绍了关于Vue中自定义全局组件的实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用vue具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-12-12
  • Vue ElementUI中el-table表格嵌套样式问题小结

    Vue ElementUI中el-table表格嵌套样式问题小结

    这篇文章主要介绍了Vue ElementUI中el-table表格嵌套样式问题小结,两个表格嵌套,当父表格有children数组时子表格才展示,对Vue ElementUI中el-table表格嵌套样式问题感兴趣的朋友跟随小编一起看看吧
    2024-02-02
  • vue前端实现下载文件功能

    vue前端实现下载文件功能

    这篇文章主要介绍了vue前端实现下载文件功能,本文给大家介绍多种方式,感兴趣的朋友跟随小编一起看看吧
    2024-10-10
  • 使用Vue Query实现高级数据获取的示例详解

    使用Vue Query实现高级数据获取的示例详解

    构建现代大规模应用程序最具挑战性的方面之一是数据获取,这也是 Vue Query 库的用途所在,下面就跟随小编一起学习一下如何利用Vue Query实现高级数据获取吧
    2023-08-08
  • vue中computed下使用箭头函数会报错问题及解决

    vue中computed下使用箭头函数会报错问题及解决

    这篇文章主要介绍了vue中computed下使用箭头函数会报错问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Vue+webpack项目基础配置教程

    Vue+webpack项目基础配置教程

    这篇文章主要介绍了Vue+webpack项目基础配置教程,需要的朋友可以参考下
    2018-02-02
  • vue中slot插槽的参数汇总及使用方案

    vue中slot插槽的参数汇总及使用方案

    Vue.js中的插槽(slot)是一种机制,允许你在组件的模板中预留一些位置,以便父组件可以将任意内容插入到这些位置,这使得组件更加灵活和可复用,本文主要介绍了vue中slot插槽的参数汇总及使用方案,需要的朋友可以参考下
    2024-03-03
  • 让你30分钟快速掌握vue3教程

    让你30分钟快速掌握vue3教程

    这篇文章主要介绍了让你30分钟快速掌握vue3,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10

最新评论