第三天,我按照其来源过滤了Google日历事件,现在我在事件中添加了扩展属性,用于对事件进行排序。问题是,我无法访问扩展属性。我遵循了此FullCalendar Event Object: Non-standard Fields (GCal),并将以下代码添加到了自己的Google日历插件副本中。 (帖子的答案说包括“ extendedProperties:extendedProperties”,但这只会破坏脚本而没有“ item”。)
return {
id: item.id,
title: item.summary,
start: item.start.dateTime || item.start.date,
end: item.end.dateTime || item.end.date,
url: url,
location: item.location,
description: item.description,
extendedProperties: item.extendedProperties,
};
然后在我的脚本中,我尝试了可能的arg.event.extendedProperties.mykey的每种组合,但仍然无法定义。我已经检查了事件,实际上它在Google日历中确实具有扩展属性,因此问题与我的全日历脚本有关。非常感谢您的帮助!
document.addEventListener('DOMContentLoaded', function() {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'interaction', 'dayGrid' , 'googleCalendar'],
defaultView: 'dayGridMonth',
contentHeight: 'auto',
defaultDate: '2019-06-07',
header: { left: 'prev,next title', center: '', right: '' },
googleCalendarApiKey: 'AIzaSyCqf1_CE',
eventSources: [
{
googleCalendarId: 'ao3q73fekndar.google.com',
className: 'blink182',
color: 'red',
},
],
eventClick: function( arg ) {
arg.jsEvent.preventDefault();
document.getElementById("val1").innerHTML = arg.event.extendedProperties.mykey;
}
});
calendar.render();
});