2017-06-15 128 views
0

有没有办法让我延迟Google Apps脚本中的函数调用?我目前正在测试较小的时间范围,但最终我希望在处理数据和调用moveRows之间有72小时的等待时间。Google Apps脚本ReferenceError:“setTimeout”未定义

我试图通过使此Javascript函数调用来实现这一目标:

setTimeout(function() { moveRows(arrayOfRows); }, 3000); 

我也试图与一个触发器这样做,但我从来没有功能接到电话。

ScriptApp.newTrigger('moveRows(arrayofRows)') 
.timeBased() 
.everyMinutes(1) 
.create() 

我在做什么错?

+0

setTimeout不是JavaScript的一部分,是客户端浏览器编程的一部分。使用触发器。你不能传递参数给触发器,使用其他方法,如脚本属性。 –

回答

1

setTimeout()属于GAS中不存在的'window'对象。请记住,代码是在Google服务器上编译的,而不是在浏览器中编译的,因此您无法在此环境中访问DOM。同样,您不能引用“文档”或其他DOM对象。唯一可能的地方是HtmlService创建并发送到浏览器进行呈现的客户端HTML。

您只能将函数名称作为参数传递给newTrigger()方法。你正在传递参数,这就是为什么它不起作用。

相关问题