Fullcalendar 将数据从google日历同步到Jquery完整日历时出错

Fullcalendar 将数据从google日历同步到Jquery完整日历时出错,fullcalendar,google-calendar-api,Fullcalendar,Google Calendar Api,我有一个任务,需要同步我的网站的完整日历与谷歌日历的私人数据。我可以从google中提取数据,但在尝试将其显示到Jquery full calendar时,它显示了一个错误TypeError:$(…)。fullCalendar不是一个函数,但当页面加载时,full calendar正确加载。我只有在从google获取数据后刷新日历时才会出现此错误 以下是我正在使用的代码: 谷歌日历API快速启动 授权 退出 var事件=[]; $(“#日历”).fullCalendar({ 事件来源:[ /

我有一个任务,需要同步我的网站的完整日历与谷歌日历的私人数据。我可以从google中提取数据,但在尝试将其显示到Jquery full calendar时,它显示了一个错误TypeError:$(…)。fullCalendar不是一个函数,但当页面加载时,full calendar正确加载。我只有在从google获取数据后刷新日历时才会出现此错误

以下是我正在使用的代码:


谷歌日历API快速启动
授权
退出
var事件=[];
$(“#日历”).fullCalendar({
事件来源:[
//您的事件源
{
事件:事件,
颜色:'黑色',//一个选项!
textColor:'黄色'//一个选项!
}
//任何其他事件源。。。
]
});
var CLIENT_ID='My ID';
var DISCOVERY_DOCS=[”https://www.googleapis.com/discovery/v1/apis/calendar/v3/rest"];
变量作用域=”https://www.googleapis.com/auth/calendar.readonly";
var authorizeButton=document.getElementById('authorized-button');
var signburatton=document.getElementById('signout-button');
函数handleClientLoad(){
load('client:auth2',initClient);
}
函数initClient(){
gapi.client.init({
发现文档:发现文档,
clientId:客户端ID,
范围:范围
}).然后(函数(){
gapi.auth2.getAuthInstance().isSignedIn.listen(updateSigninStatus);
updateSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get());
authorizeButton.onclick=handleAuthClick;
SignerButton.onclick=handleSignoutClick;
});
}
函数updateSigninStatus(isSignedIn){
如果(伊西涅丁){
authorizeButton.style.display='none';
signexputton.style.display='block';
listUpcomingEvents();
}否则{
authorizeButton.style.display='block';
signexputton.style.display='none';
}
}
函数handleAuthClick(事件){
gapi.auth2.getAuthInstance().signIn();
}
函数handleSignoutClick(事件){
gapi.auth2.getAuthInstance().signOut();
}
函数appendPre(消息){
var pre=document.getElementById('content');
var textContent=document.createTextNode(message+'\n');
pre.appendChild(文本内容);
}
函数刷新日历(eventData){
$(“#日历”).fullCalendar({
事件来源:[
//您的事件源
{
事件:eventData,
颜色:'黑色',//一个选项!
textColor:'黄色'//一个选项!
}
//任何其他事件源。。
]
});
}
函数listUpcomingEvents(){
gapi.client.calendar.events.list({
'日历ID':'主要',
'timeMin':(新日期()).toISOString(),
“showDeleted”:false,
“singleEvents”:对,
“maxResults”:10,
“订购人”:“开始时间”
}).然后(功能(响应){
var googleEvents=response.result.items;
如果(googleEvents.length>0){
对于(i=0;i
您知道这样做可以简单得多吗?还是让用户登录并显示自己帐户中的日历?如果是这样,重新声明fullCalendar(按照RefreshCalendar方法)不是添加/删除事件的最佳方式。相反,请使用,是的,我想从他们自己的帐户获取信息,谢谢你的建议,我会更新这些信息,但仍然会发布他们的持久性问题,在从google获取数据后,我无法使用fullcalendar、.fullcalendar('addEventSource',source),或者什么都不能使用。你得到了fullcalendar不是函数的相同错误吗?是的,但是最初它的工作和硬编码事件被加载到日历中,但是当我调用refreshCalandar方法时,显示了这个错误