文件名称:处理日历复发规则rrule.zip
文件大小:119KB
文件格式:ZIP
更新时间:2022-08-05 22:57:27
开源项目
rrule 是一个处理日历日期复发规则的 JavaScript 库。rrule.js 支持在 iCalendar RFC 定义的复发规则,这是从优秀的 python-dateutil 库的 RRULE 模块的部分端口。最重要的是,它支持解析和序列化自然语言的复发规则。使用示例:// Create a rule: var rule = new RRule({ freq: RRule.WEEKLY, interval: 5, byweekday: [RRule.MO, RRule.FR], dtstart: new Date(2012, 1, 1, 10, 30), until: new Date(2012, 12, 31) }); // Get all occurrence dates (Date instances): rule.all(); ['Fri Feb 03 2012 10:30:00 GMT 0100 (CET)', 'Mon Mar 05 2012 10:30:00 GMT 0100 (CET)', 'Fri Mar 09 2012 10:30:00 GMT 0100 (CET)', 'Mon Apr 09 2012 10:30:00 GMT 0200 (CEST)', /* … */] // Get a slice: rule.between(new Date(2012, 7, 1), new Date(2012, 8, 1)) ['Mon Aug 27 2012 10:30:00 GMT 0200 (CEST)', 'Fri Aug 31 2012 10:30:00 GMT 0200 (CEST)'] // Get an iCalendar RRULE string representation: // The output can be used with RRule.fromString(). rule.toString(); "FREQ=WEEKLY;DTSTART=20120201T093000Z;INTERVAL=5;UNTIL=20130130T230000Z;BYDAY=MO,FR" // Get a human-friendly text representation: // The output can be used with RRule.fromText(). rule.toText() "every 5 weeks on Monday, Friday until January 31, 2013" 标签:rrule
【文件预览】:
rrule-master
----.travis.yml(329B)
----package.json(2KB)
----tslint.json(4KB)
----LICENCE(3KB)
----.github()
--------pull_request_template.md(350B)
--------issue_template.md(558B)
----test()
--------optionstostring.test.ts(1KB)
--------dateutil.test.ts(310B)
--------rruleset.test.ts(19KB)
--------tslint.json(64B)
--------helpers.test.ts(3KB)
--------mocha.opts(64B)
--------parseoptions.test.ts(493B)
--------nlp.test.ts(4KB)
--------rrulestr.test.ts(11KB)
--------datewithzone.test.ts(2KB)
--------lib()
--------rrule.test.ts(88KB)
--------parsestring.test.ts(2KB)
----index.html(15B)
----src()
--------weekday.ts(1KB)
--------helpers.ts(4KB)
--------parsestring.ts(3KB)
--------iterresult.ts(3KB)
--------callbackiterresult.ts(659B)
--------rrule.ts(8KB)
--------optionstostring.ts(3KB)
--------rrulestr.ts(6KB)
--------dateutil.ts(5KB)
--------iterset.ts(2KB)
--------parseoptions.ts(6KB)
--------nlp()
--------datewithzone.ts(1KB)
--------datetime.ts(6KB)
--------masks.ts(2KB)
--------iter()
--------cache.ts(3KB)
--------types.ts(2KB)
--------iterinfo()
--------index.ts(1KB)
--------rruleset.ts(5KB)
----tsconfig.test.json(400B)
----tsconfig.json(482B)
----codecov.yml(102B)
----.gitignore(78B)
----webpack.config.js(2KB)
----CHANGELOG.md(4KB)
----demo()
--------index.html(26KB)
--------demo.css(3KB)
--------demo.ts(7KB)
----README.md(26KB)
----yarn.lock(130KB)
----bower.json(614B)
----.vscode()
--------launch.json(750B)