这篇文章给大家讲解如何利用 dhtmlxGantt正确保存和显示任务的结束日期,本节将给你一个明确答案。
首先,让我们考虑一下在处理任务日期时可能会遇到的两种情况:
方案1
- 当任务持续时间以天为单位测量时 (duration_unit="day")
- 当任务数据对象包含“%Y-%m-%d”或“%d-%m-%Y”格式的开始和结束日期时(即没有小时-分钟部分)
由于dhtmlxGantt如何解释和存储任务结束日期的详细信息,结果日期可能具有不期望的值。
看看下面的例子:
gantt.parse({ tasks: [ { id: 1, text: "Task 1", start_date: "22-12-2021", end_date: "22-12-2021" } ]}, links:[]); console.log(gantt.getTask(1).end_date); // 22 December 2021 00:00:00 console.log(gantt.getTask(1).duration); // 0
在此示例中,开始日期和结束日期将引用相同的时间点,并且任务持续时间将为0。
方案2
- 当任务的结束日期显示在网格中时
- 并且结束日期的格式不包括小时-分钟部分
gantt.config.columns = [ {name: "text", label: "Name", tree: true, width: 200, resize: true}, {name: "duration", label: "Duration", width:80, align: "center", resize: true}, {name: "start_date", label: "Start", width:80, align: "center", resize: true}, {name: "end_date", label: "Finish", width:80, align: "center