#815·Pikaday

Remove Moment.js dependency

Author: wojciechczerniakCreated Oct 30, 2018Updated Nov 28, 2023
Labelsbreaking change

Checklist

How to update from 1.x to 2.x

getMoment

Use getDate.

javascript
let momentDate = moment(pikadayInstance.getDate());

setMoment

Use setDate.

javascript
pikadayInstance.setDate(momentDate.toDate(), preventOnSelect);

toString

Define custom toString function in Pikaday options.

javascript
let pikaday = new Pikaday({
    ...
    toString(date, format) {
        return moment(date).format(format);
    },
});

parse

Define custom parse function in Pikaday options.

javascript
let pikaday = new Pikaday({
    ...
    parse(dateString, format) {
        let date = moment(dateString, format, formatStrict);
        return (date && date.isValid()) ? date.toDate() : null;
    },
});

formatStrict

See parse section above.

Advanced Moment integration example

You can use moment js to localize Pikaday!

javascript
moment.locale('nl');

var pikadayLocale = {
    previousMonth: 'Previous Month',
    nextMonth: 'Next Month',
    months: moment.months(),
    weekdays: moment.weekdays(),
    weekdaysShort: moment.weekdaysShort()
};

Source: https://github.com/Pikaday/Pikaday/issues/472#issuecomment-172789904