本文整理汇总了TypeScript中date-fns.differenceInDays函数的典型用法代码示例。如果您正苦于以下问题:TypeScript differenceInDays函数的具体用法?TypeScript differenceInDays怎么用?TypeScript differenceInDays使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了differenceInDays函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getWeekViewEventOffset
export function getWeekViewEventOffset(
{ event, startOfWeek, excluded = [] }: { event: CalendarEvent, startOfWeek: Date, excluded?: number[] }): number {
if (event.start < startOfWeek) {
return 0;
}
const distance: number = dateFns.differenceInDays(event.start, startOfWeek);
return distance - getExcludedDays({ startDate: startOfWeek, days: distance, excluded });
}
示例2: getMonthView
export function getMonthView({
events = [],
viewDate,
weekStartsOn,
excluded = [],
}: {
events?: CalendarEvent[];
viewDate: Date;
weekStartsOn: number;
excluded?: number[];
}): MonthView {
if (!events) {
events = [];
}
const start: Date = dateFns.startOfWeek(dateFns.startOfMonth(viewDate), { weekStartsOn });
const end: Date = dateFns.endOfWeek(dateFns.endOfMonth(viewDate), { weekStartsOn });
const eventsInMonth: CalendarEvent[] = getEventsInPeriod({
events,
periodStart: start,
periodEnd: end,
});
const days: MonthViewDay[] = [];
for (let i: number = 0; i < dateFns.differenceInDays(end, start) + 1; i++) {
const date: Date = dateFns.addDays(start, i);
if (!excluded.some((e) => date.getDay() === e)) {
const day: MonthViewDay = getWeekDay({ date }) as MonthViewDay;
const calEvents: CalendarEvent[] = getEventsInPeriod({
events: eventsInMonth,
periodStart: dateFns.startOfDay(date),
periodEnd: dateFns.endOfDay(date),
});
day.inMonth = dateFns.isSameMonth(date, viewDate);
day.events = calEvents;
day.badgeTotal = calEvents.length;
days.push(day);
}
}
const totalDaysVisibleInWeek: number = DAYS_IN_WEEK - excluded.length;
const rows: number = Math.floor(days.length / totalDaysVisibleInWeek);
const rowOffsets: number[] = [];
for (let i: number = 0; i < rows; i++) {
rowOffsets.push(i * totalDaysVisibleInWeek);
}
return {
rowOffsets,
totalDaysVisibleInWeek,
days,
};
}
示例3: getWeekViewEventSpan
function getWeekViewEventSpan(
{ event, offset, startOfWeek, excluded }: { event: CalendarEvent, offset: number, startOfWeek: Date, excluded: number[] }): number {
const begin: Date = event.start < startOfWeek ? startOfWeek : event.start;
let span: number = 1;
if (event.end) {
span = dateFns.differenceInDays(dateFns.addMinutes(dateFns.endOfDay(event.end), 1), dateFns.startOfDay(begin));
}
const totalLength: number = offset + span;
if (totalLength > DAYS_IN_WEEK) {
span = DAYS_IN_WEEK - offset;
}
return span - getExcludedDays({ startDate: begin, days: span, excluded });
}
示例4: differenceInDays
export function differenceInDays(dateLeft: Date, dateRight: Date): number {
return _differenceInDays(dateLeft, dateRight);
}