@segor/simple-datepicker v1.0.2
Simple Datepicker
Данная библиотека написана в качестве вспомогательного инструмента при создании комопнента выбора даты.
Установка
npm install @segor/simple-datepicker
или
yarn add @segor/simple-datepicer
Инициализация
import DatepickerCore from "@segor/simple-datepicker";
const datepicker = new DatepickerCore();
Методы
getMonthSlice
const slice = datepicker.getMonthSlice(month?: number, year?:number);
Возвращает Slice элемент представляющий собой массив всех дней месяца, разбитых по неделям. Последние месяца кеширует и сохраняет в свойство slices.
Например:
Результатом вызова
datepicker.getMonthSlice(6, 2021)
Будет
[
[undefined, undefined, undefined, 1, 2, 3, 4],
[5, 6, 7, 8, 9, 10, 11],
[12, 13, 14, 15, 16, 17, 18],
[19, 20, 21, 22, 23, 24, 25],
[26, 27, 28, 29, 30, 31, undefined]
]
По данной структуре удобно проходить нативными методами массивов при создании календаря.
getMonthTails
const tails = datepicker.getMonthTails(month?: number, year?:number);
Возвращает объект с двумя свойствами:
- prev - последняя неделя предыдущего месяца.
- next - первая неделя следующего месяца.
Например:
Результатом вызова
datepicker.getMonthTails(6, 2021);
Будет
{
prev: [28, 29, 30, undefined, undefined, undefined, undefined],
next: [undefined, undefined, undefined, undefined, undefined, undefined, 1]
}
setShownDate
datepicker.setShownDate(month?: number, year?: number);
Устанавливает значение свойства shownDate. По умолчанию аргументы являются текущей датой.
setSelectedDate
datepicker.setSelectedDate(month?: number, year?: number);
Устанавливает значение свойства selectedDate. По умолчанию аргументы являются текущей датой.
cleanSlices
datepicker.cleanSlices();
Очищает кэш с посчитаными месяцами.
Статические методы
getDaysInMonth
const daysInMonth: number = DatepickerCore.getDaysInMonth(month: number, year: number);
Или
const daysInMonth: number = DatepickerCore.getDaysInMonth(date: Date);
Возвращает количество дней в месяце.
Например:
DatepickerCore.getDaysInMonth(6, 2021) // returns 31
monthStartsWith
const weekDay: number = DatepickerCore.monthStartsWith(month: number, year: number);
Или
const weekDay: number = DatepickerCore.monthStartsWith(date: Date);
Возвращает день недели, с которого начинается месяц, в виде номера. Понедельник равен нулю.
Например:
DatepickerCore.monthStartsWith(6, 2021) // returns 3
Свойства
shownDate
const date: Date = datepicker.shownDate
Используется для хранения даты, месяц которой в данный момент отображен в календаре.
selectedDate
const date: Date = datepicker.shownDate
Используется для хранения даты, которую выбрал пользователь.