Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用moment()生成季度日期。recur()_Javascript_Momentjs_Moment Recur - Fatal编程技术网

Javascript 使用moment()生成季度日期。recur()

Javascript 使用moment()生成季度日期。recur(),javascript,momentjs,moment-recur,Javascript,Momentjs,Moment Recur,我正在构建一个日历应用程序,用户可以在其中保存重复发生的事件 经过大量研究,我选择使用moment.js库的moment recur插件将重复事件的日期保存在数据库中 我的问题是:我的应用程序中的用户经常希望在财务季度结束时将事件设置为重复 在英国,分别是3月31日、6月30日、9月30日和12月31日 我无法找到实现此功能的方法。如果我将重复周期设置为“3个月”,如下所示: let recurtive=moment(date).recur()。每(3,“月”) 如果开始日期为2016年3月31

我正在构建一个日历应用程序,用户可以在其中保存重复发生的事件

经过大量研究,我选择使用moment.js库的moment recur插件将重复事件的日期保存在数据库中

我的问题是:我的应用程序中的用户经常希望在财务季度结束时将事件设置为重复

在英国,分别是3月31日、6月30日、9月30日和12月31日

我无法找到实现此功能的方法。如果我将重复周期设置为“3个月”,如下所示:

let recurtive=moment(date).recur()。每(3,“月”)

如果开始日期为2016年3月31日,则将跳过6月,因为6月只有30天

如果开始日期为2016年6月30日,则该日期在31日结束的季度不起作用


任何建议都将不胜感激

您只需获取当前季度,通过不断添加季度数,如1、2、3,您将获得后续季度

moment().endOf('quarter').startOf('day');
moment().add(1, 'quarter').endOf('quarter').startOf('day');
moment().add(2, 'quarter').endOf('quarter').startOf('day');
moment().add(3, 'quarter').endOf('quarter').startOf('day');

也许生成4月1日、7月1日等并减去一天会更容易?嘿,谢谢你的回复!这实际上是有道理的。最后,我决定使用RRule.js包,因为它比MomentRecurr更全面,但您的解决方案会奏效!