2017-03-01 74 views
0

我使用平板pickr和被给予输入的日期将是这样:Flatpickr - 日期自动更改为美国版本而不是英国格式。

1991年1月2日(第1天/月月/ 1991年

然而,当我想补充flatpickr它的日期转换为等级:

1991年2月1日

日美版日期。

我以为我可以做下面的代码很容易解决这个问题:

init() { 
    let flatPicker = document.querySelector('.flatpickr') 

    if (flatPicker) { 
     flatPickr.l10ns.default.weekdays.shorthand = ['S', 'M', 'T', 'W', 'T', 'F', 'S'] 

     new flatPickr(flatPicker, 
      { 
       nextArrow: '<svg class="icon icon-arrow-right"><use xlink:href="/dist/assets/svg-definition/symbol-defs.svg#icon-arrow-right"></use></svg>', 
       prevArrow: '<svg class="icon icon-arrow-left"><use xlink:href="/dist/assets/svg-definition/symbol-defs.svg#icon-arrow-left"></use></svg>', 

       // Date format 
       altInput: true, 
       altFormat: 'd-m-Y', 

       // Default Date 
       dateFormat: 'd-m-Y' 
      } 
     ); 
    } 
} 

我想最重要的一点将是DATEFORMAT:“d-M-Y”。

其他人可以发现我在做什么错吗?

非常感谢

回答

0

您需要一个自定义日期解析器。因为d.m.y不是标准的日期格式。 之前flatpickr()添加下面的代码,它需要moment.js

Flatpickr.defaultConfig.parseDate = function(str) { 
    return moment.utc(str, "DD.MM.YYYY").toDate(); 
} 
相关问题