我创建了一个Google Apps脚本Code.gs
,如下所示,从早于X
天且标记为Y
的每个主题中删除Gmail标签。
function archiveYThreads() {
// Every thread, older than two days, and labeled "Unread Feeds".
var threads = GmailApp.search('label:"Unread Feeds" older_than:2d');
for (var i = 0; i < threads.length; i++) {
threads[i].removeLabel("Unread Feeds");
}
}
根据documentation,函数removeLabel
存在。或者,我发现一些使用deleteLabel
的来源。但是,在设置了基于时间的触发器后,我得到两个函数都不存在的错误:
任何人都可以帮我检测一下这个功能不起作用的原因吗?
答案 0 :(得分:2)
您必须提供类型为GmailLabel的对象作为removeLabel()方法的参数。试试这个片段。
function archiveYThreads() {
var label = GmailApp.getUserLabelByName("Unread Feeds");
var threads = GmailApp.search('label:"Unread Feeds" older_than:2d');
for (var i = 0; i < threads.length; i++) {
threads[i].removeLabel(label);
}
}