gpt4 book ai didi

javascript - 如何检查谷歌日历API请求是否已完成?

转载 作者:行者123 更新时间:2023-11-28 18:23:06 25 4
gpt4 key购买 nike

这是官方 Google 日历 API 示例的一部分。该代码异步执行,这意味着如果我将使用接收到的数据的函数放在下面,它将在获得所需结果之前启动。如何确保请求已完成其工作并且结果已准备就绪?谢谢

    function listUpcomingEvents() {
var request = gapi.client.calendar.events.list({
'calendarId': 'primary',
'timeMin': (new Date()).toISOString(),
'showDeleted': false,
'singleEvents': true,
'maxResults': 10,
'orderBy': 'startTime'
});

request.execute(function(resp) {
var events = resp.items;
appendPre('Upcoming events:');

if (events.length > 0) {
for (i = 0; i < events.length; i++) {
var event = events[i];
var when = event.start.dateTime;
if (!when) {
when = event.start.date;
}
appendPre(event.summary + ' (' + when + ')')
}
} else {
appendPre('No upcoming events found.');
}

});
}

最佳答案

创建您自己的函数

myEvents(events){
// console.log(events);
}

在请求回调中调用

这里的匿名函数是 Google 日历请求回调。所以当请求完成时,这个函数就会被执行。

function listUpcomingEvents() {

[...]

// Google calendar API request
request.execute(function(resp) {
// Google calendar API request has finished
var events = resp.items;
appendPre('Upcoming events:');

if (events.length > 0) {
for (i = 0; i < events.length; i++) {
var event = events[i];
var when = event.start.dateTime;
if (!when) {
when = event.start.date;
}
appendPre(event.summary + ' (' + when + ')')
}
} else {
appendPre('No upcoming events found.');
}

// Here, you're function call
myEvents(events)

});
}

关于javascript - 如何检查谷歌日历API请求是否已完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39627229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com