xpyjs / gantt

An easy-to-use Gantt component. 持续更新,中文文档
https://docs.xiaopangying.com/gantt/
MIT License
243 stars 41 forks source link

如何能够获取甘特图渲染的日期范围? #105

Closed RicardoWL closed 2 months ago

RicardoWL commented 2 months ago

如何能够获取甘特图渲染的日期范围? 由于我自定义节假日信息(包含周六日)并且通过接口来获取设置,需要明确需要的日期范围。有什么方法能够获取吗? 设置了show-weekend="false",否则我自定义的节假日日期会与默认渲染的重叠,导致背景色变深

另外,如果我传入的节假日日期超过默认渲染的日期范围,会出现额外渲染的列,但是不显示对于的日期 下图设置了节假日为['2024-06-29','2024-06-30'] bug @jeremyjone

jeremyjone commented 2 months ago

表头是自动设置的,就算你给定了日期,实际渲染也可能会与预期不符。况且滑块在滑动后,日期也会跟随改变,所以这个功能是不可取的。

我看一下假期列表,逻辑上如果超期了(不在渲染范围),是不会渲染的。这个方案怎么样?

RicardoWL commented 2 months ago

倒不是说给定渲染日期啥的。我是想能不能抛出方法,能够获取当前渲染的日期范围?由开发人员主动调用来获取?不过可能适用场景并不会很多。

假期列表超出渲染范围不渲染的话,是可以接受的,也算是比较合理的处理了

jeremyjone commented 2 months ago

正如我上面说的,日期会随着滑块移动而改变,所以就算抛出来,需要持续监听。所以这个意义应该不大,至少我没有想到会有什么场景需要使用它。如果你有这样的场景,可以介绍一下,我学习一下。

RicardoWL commented 2 months ago

在自定义节假日的情况下,我需要通过接口去获取节假日的数据。我需要的是能够获取当前已渲染的日期范围,让我能够更加准确地通过接口获取这个范围内的节假日信息。而不需要实时监听范围的变化。我可以在滑块移动变化后,重新主动去获取已渲染的范围来更新我的节假日信息,而不是依赖于组件自身的事件抛出。

RicardoWL commented 2 months ago

因为目前没有相关方法,我只能通过滑块上已有的日期范围来获取对应的节假日信息,就会有部分已渲染的日期无法渲染节假日的样式 image

jeremyjone commented 2 months ago

在这种情况下确实有可能会用到。因为如果跨度太大,确实可能。我想想吧