Javascript FullCalendar moment.js弃用警告
我对fullCalendar有问题。依赖项库moment.js将在Console中输出以下错误Javascript FullCalendar moment.js弃用警告,javascript,fullcalendar,Javascript,Fullcalendar,我对fullCalendar有问题。依赖项库moment.js将在Console中输出以下错误 弃用警告:提供的值不是可识别的RFC2822或ISO格式。moment构造回到js Date(),这在所有浏览器和版本中都不可靠。不鼓励使用非RFC2822/ISO日期格式,并将在即将发布的主要版本中删除。请参阅http://momentjs.com/guides/#/warnings/js-日期/以获取更多信息。 论据: [0]\u isamentintObject:true、\u isUTC:tr
弃用警告:提供的值不是可识别的RFC2822或ISO格式。moment构造回到js Date(),这在所有浏览器和版本中都不可靠。不鼓励使用非RFC2822/ISO日期格式,并将在即将发布的主要版本中删除。请参阅http://momentjs.com/guides/#/warnings/js-日期/以获取更多信息。
论据:
[0]\u isamentintObject:true、\u isUTC:true、\u useUTC:true、\u l:undefined、\u i:1、\u f:undefined、\u strict:undefined、\u locale:[object object]
我在这里查看了SO,它似乎是一个与事件传递日期格式相关的错误。我已经检查了提取数据的数据库表,存储格式是这样的日期Y-m-d
,因此每个事件日期都类似于2018-09-19
。有办法解决这个问题吗?这很奇怪,因为我在其他项目中使用相同的插件,它没有给我这个错误,并且存储的数据与设置为DATE
的db列的格式相同
事件的PHP代码
$events = array();
$stmt = $db->prepare('SELECT * FROM matches');
$stmt->execute();
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach($results as $result){
$events[] = array(
'id' => $result['id'],
'title' => $result['competition'],
'start' => DateTime::createFromFormat('Y-m-d' ,$result['matchDay']),
'end' => DateTime::createFromFormat('Y-m-d' ,$result['matchDay'])
);
}
echo json_encode($events);
?>
在这一行
'title' => DateTime::createFromFormat('Y-m-d' ,$result['competition']),
'end' => DateTime::createFromFormat('Y-m-d' ,$result['matchDay'])
你告诉它用这种“Y-m-d”格式创建一个日期,试着给出
'Y-m-d H:i:s' format and see what happens
该文件不是iso格式。你必须给出iso格式的日期。格式化日期,如下面的
时刻(您的_日期)。格式化('YYYY-MM-DDTHH:MM:SS')
。顺便说一句,如果你分享你的代码总是更好。但这是我第一次遇到这个问题,因为我写了一个数据库,上面有日期,在另一个应用程序上它没有生成警告。我不确定你在那里使用的是哪个版本的moment。但是在新版的moment中,如果您提供的日期不符合iso格式或RFC2822,那么您将收到此警告。或者您可以使用类似的moment(您的时间)。toDate()
Check answer Section谢谢,我在json的标题键上也犯了错误。我将尝试您的修复。我已经检查了json响应,它将为开始键和结束键输出false。我想在不使用DateTime::createFromFormat
的情况下进行测试,以查看数据是否正确输出。否则,我需要重写代码(很乐意帮助:)