我想知道上面提到的弃用方法对于我的momentJS方法意味着什么,以及我可以做些什么来正确地格式化我的值。我的日期值格式为2015-12-11 00:00:00
。我正在尝试将它们转换为适当的字段格式YYYY-MM-DD
。我下面的jQuery允许我以正确的格式转换我的日期值而没有任何问题,但我在控制台日志中收到以下警告。这意味着什么?
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指定的 价值“Wed Sep 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弃用警告:时刻 建设可以追溯到日期。这是沮丧的,并且将是 在即将发布的主要版本中删请参阅 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)
答案 0 :(得分:3)
将此添加到您的代码中。
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') );
发生错误是因为,
使用非iso字符串的时刻构建已弃用。