Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何知道基于时间的触发器是否已被删除? 函数triggerdelete(){ var indextrigger=ScriptApp.getProjectTriggers(); 对于(变量i=0;i_Javascript_Google Apps Script_Triggers - Fatal编程技术网

Javascript 如何知道基于时间的触发器是否已被删除? 函数triggerdelete(){ var indextrigger=ScriptApp.getProjectTriggers(); 对于(变量i=0;i

Javascript 如何知道基于时间的触发器是否已被删除? 函数triggerdelete(){ var indextrigger=ScriptApp.getProjectTriggers(); 对于(变量i=0;i,javascript,google-apps-script,triggers,Javascript,Google Apps Script,Triggers,我有上面的代码。我使用了var triggerhandler=ScriptApp.newTrigger(“responsechange”).timeBased().after(60000.create().getHandlerFunction()以获取处理程序函数。它返回我responechange作为HandlerFunction的名称,我不确定它是否正确 但是,如何知道每次运行脚本后是否删除了基于时间的触发器?现在,我遇到了“脚本中触发器太多”的错误 提前谢谢您可以通过转到@ross查看项目

我有上面的代码。我使用了
var triggerhandler=ScriptApp.newTrigger(“responsechange”).timeBased().after(60000.create().getHandlerFunction()
以获取处理程序函数。它返回我responechange作为HandlerFunction的名称,我不确定它是否正确

但是,如何知道每次运行脚本后是否删除了基于时间的触发器?现在,我遇到了“脚本中触发器太多”的错误


提前谢谢

您可以通过转到@ross查看项目的所有触发器-这包括以编程方式创建的基于时间的触发器?我尝试了上面的方法,但似乎没有从我的触发器页面中删除任何触发器。是的,所有触发器都显示在那里。听起来你的
if
语句不太正确。如果我知道,它怎么不正确?我确实在if循环中包含了一个console.log,console.log没有显示,所以我假设它实际上被删除了?经过几次尝试,使用相同的代码,它成功了。我的仪表板上的触发器在触发1分钟后开始消失。我猜这和单引号有关。我把它改成了双倍,但它不起作用,当我尝试单打时,它起作用了。
function triggerdelete() {
  var indextrigger = ScriptApp.getProjectTriggers();
  for (var i = 0; i < indextrigger.length; i++) {
    if (indextrigger[i].getHandlerFunction() == 'responsechange') {
      ScriptApp.deleteTrigger(indextrigger[i])
    }
  }
}