繰り返し予定(RRULE)
:LiTarget: 用途
iCal RRULE準拠の繰り返しルール(毎週月曜・隔週など)を解釈・生成。
:LiSparkle: 特徴
- RRULE生成
- 日付展開
- 例外日除外
- iCal互換
:LiCode: コード(コピペ用)
import { RRule, Frequency } from 'rrule';
// 毎週月・水・金、10回まで
const rule = new RRule({
freq: Frequency.WEEKLY,
byweekday: [RRule.MO, RRule.WE, RRule.FR],
dtstart: new Date(2026, 4, 1),
count: 10,
});
const dates = rule.all(); // Date[]
const ruleStr = rule.toString(); // 'DTSTART:... RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR;COUNT=10'
// 文字列から復元
const rule2 = RRule.fromString(ruleStr);
:LiHandPointer: 使い方
対象プロジェクトに該当ファイルをコピーして、props を流し込むだけ。
:LiAlertCircle: 注意事項
- 依存パッケージを忘れず追加