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

时间:2016-09-21 21:59:52

标签: javascript api calendar google-calendar-api

这是官方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.');
      }

    });
  }

1 个答案:

答案 0 :(得分:3)

创建自己的功能

HKLM\Console

在请求回调中调用它

此处的匿名功能是Google日历请求回调。因此,当请求完成时,将执行此功能。

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