使用 Google 日历删除事件 API
Deleting Events with Google Calendar API
参考: https://developers.google.com/calendar/v3/reference/events/delete
错误: 后缺少名称。操作员。 (第 131 行,文件 "Code")
function deleteEvent() {
for (var i = 1; i < datalastRow; i++) {
var calendarId = sheet.getRange('E2').getValue();
var delete_eventid = sheet.getRange(i + 1, 3).getValue()
var params = {
calendarId: calendarId,
eventId: delete_eventid,
};
calendar.events.delete(params, function(err) {
if (err) {
console.log('The API returned an error: ' + err);
return;
}
console.log('Event deleted.');
});
}
}
基本上当我尝试保存代码时 calendar.events.delete(params, function(err)) {
行抛出错误,我不确定为什么会发生这种情况,因为我可以 运行 calendar.events.insert
并且创建事件就好了, 但它似乎不喜欢 calendar.events.delete
.
编辑:我删除了第一个答案中引用的多余“)”
你在这行有一个语法错误:
calendar.events.delete(params, function(err)) {
要删除的第二个参数应该是一个函数,但它应该是这样的:
calendar.events.delete(params, function(err) { ... })
不同之处在于第二个 )
包装回调。
如果您使用 Google Apps 脚本,这个怎么样?您可以通过 deleteEvent() 删除事件。 deleteEvent() returns 无效。所以我为此使用了try-catch。
function deleteEvent() {
var calendarId = sheet.getRange('E2').getValue();
for (var i = 1; i < datalastRow; i++) {
var delete_eventid = sheet.getRange(i + 1, 3).getValue();
try {
CalendarApp.getCalendarById(calendarId).getEventById(delete_eventid).deleteEvent();
} catch(e) {
console.error("Error deleting event " + delete_eventid + " from calendar " + calendarId + ". Error: " + e);
}
}
}
参考: https://developers.google.com/calendar/v3/reference/events/delete
错误: 后缺少名称。操作员。 (第 131 行,文件 "Code")
function deleteEvent() {
for (var i = 1; i < datalastRow; i++) {
var calendarId = sheet.getRange('E2').getValue();
var delete_eventid = sheet.getRange(i + 1, 3).getValue()
var params = {
calendarId: calendarId,
eventId: delete_eventid,
};
calendar.events.delete(params, function(err) {
if (err) {
console.log('The API returned an error: ' + err);
return;
}
console.log('Event deleted.');
});
}
}
基本上当我尝试保存代码时 calendar.events.delete(params, function(err)) {
行抛出错误,我不确定为什么会发生这种情况,因为我可以 运行 calendar.events.insert
并且创建事件就好了, 但它似乎不喜欢 calendar.events.delete
.
编辑:我删除了第一个答案中引用的多余“)”
你在这行有一个语法错误:
calendar.events.delete(params, function(err)) {
要删除的第二个参数应该是一个函数,但它应该是这样的:
calendar.events.delete(params, function(err) { ... })
不同之处在于第二个 )
包装回调。
如果您使用 Google Apps 脚本,这个怎么样?您可以通过 deleteEvent() 删除事件。 deleteEvent() returns 无效。所以我为此使用了try-catch。
function deleteEvent() {
var calendarId = sheet.getRange('E2').getValue();
for (var i = 1; i < datalastRow; i++) {
var delete_eventid = sheet.getRange(i + 1, 3).getValue();
try {
CalendarApp.getCalendarById(calendarId).getEventById(delete_eventid).deleteEvent();
} catch(e) {
console.error("Error deleting event " + delete_eventid + " from calendar " + calendarId + ". Error: " + e);
}
}
}