2016-06-14 54 views
0

上午8点,我正在通过jdbc将数据从mySQL数据库拉到谷歌电子表格中。我创建了以下基于时间的触发器。谷歌应用程序脚本中的基于时间的触发器

function createTimeBasedTrigger() { 

var triggers = ScriptApp.getProjectTriggers(); 
for (var i = 0; i < triggers.length; i++) { 
if (triggers[i] === 'myFunction') ScriptApp.deleteTrigger(triggers[i]); 
}; 

ScriptApp.newTrigger('myFunction') 
.timeBased() 
.everyDays(1) 
.atHour(8) 
.create(); 
} 

我也尝试在脚本编辑器中创建触发器,它们要么执行多次,要么根本不执行。

回答

1

触发器不是一个字符串,它是一个对象。它不能等于'myFunction'。正确的比较看起来像

if (triggers[i].getHandlerFunction() === 'myFunction') { 
    ScriptApp.deleteTrigger(triggers[i]); 
} 

也就是说,通过管理脚本编辑器界面触发方便,他们按预期运行,前提是你调用的函数的实际工作。

相关问题