2015-12-30 2 views
0

Мне было интересно, что упомянутый устаревший метод означает мой метод myJate и какое изменение я могу внести для правильного форматирования моих значений. У меня есть значения даты в формате как таковые 2015-12-11 00:00:00. И я пытаюсь преобразовать их в соответствующий формат поля YYYY-MM-DD. Мой jQuery ниже позволяет мне преобразовать значения даты в нужном формате без каких-либо проблем, но я получаю следующее предупреждение в моем журнале консоли. Есть идеи, что это значит?Предупреждение об износ Momentjs с использованием формата

JQuery:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#test-form-date").val(moment("{{test.testDate}}").format('YYYY-MM-DD')); 
     $("#data-date-start").val(moment("{{test.testDateStart}}").format('YYYY-MM-DD')); 
     $("#data-date-end").val(moment("{{test.testDateEnd}}").format('YYYY-MM-DD')); 
    }); 
    </script> 

Вот форма, которая модифицируется:

<div class="test-form-header"> 
    <input type="date" name="testDate" id="test-form-date" value="{{test.testDate}}"> 
</div> 
</br> 
<div class="form-inline date-start"> 
    <label for="data-start-range">Data Date Start:</label> 
    <input type="date" id="data-date-start" name="dataDateStart" value="{{test.dataDateStart}}"> 
</div> 
<div class="form-inline date-end"> 
    <label for="data-end-range">Data Date End:</label> 
    <input type="date" id="data-date-end" name="dataDateEnd" value="{{test.dataDateEnd}}"> 
</div> 

Вот предупреждение в лог консоли:

Указанное значение «Sun Dec 27 2015 19:00:00 GMT-0500 (EST) "не соответствует требуемому формату" yyyy-MM-dd ". 10:60 Указанное значение «Ср 30 сентября 2015 года 20:00:00 GMT-0400 (EDT)» не соответствует требуемому формату «yyyy-MM-dd». 10:64 Указанное значение «Thu Dec 03 2015 19:00:00 GMT-0500 (EST)» не соответствует требуемому формату «yyyy-MM-dd». moment.js: 737 Предупреждение об изъятии: момент Строительство возвращается к js Date. Это обескуражено и будет удалено в предстоящей крупной версии. Пожалуйста, обратитесь к https://github.com/moment/moment/issues/1407 для получения дополнительной информации.

Ошибка

at Function.createFromInputFallback (http://momentjs.com/downloads/moment.js:746:36) 
at configFromString (http://momentjs.com/downloads/moment.js:826:32) 
at configFromInput (http://momentjs.com/downloads/moment.js:1353:13) 
at prepareConfig (http://momentjs.com/downloads/moment.js:1340:13) 
at createFromConfig (http://momentjs.com/downloads/moment.js:1307:44) 
at createLocalOrUTC (http://momentjs.com/downloads/moment.js:1385:16) 
at local__createLocal (http://momentjs.com/downloads/moment.js:1389:16) 
at utils_hooks__hooks (http://momentjs.com/downloads/moment.js:16:29) 
at HTMLDocument.<anonymous> (http://localhost:3000/app/edit/10:87:38) 
at j 

(https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js:2:26925)

ответ

2

Добавьте это в ваш код.

moment.createFromInputFallback = function(config) { 
    // unreliable string magic, or 
    config._d = new Date(config._i); 
}; 
$("#test-form-date").val(moment("{{test.testDate}}").format('YYYY-MM-DD')); 

ошибка происходит потому, что

момент строительства, используя строку, не изо осуждается.

Для получения более подробной информации читайте, Be careful when falling back to Date constructor

Смежные вопросы