异步google.script.run成功时循环增量

时间:2016-12-30 00:34:48

标签: javascript asynchronous google-apps-script

我想在while循环中使用google.script.run, the asynchronous client-side JavaScript API provided by Google Scripts。我理解对google.script.run的调用是异步的,所以我甚至尝试使用全局变量'window.i'进行循环迭代。

不幸的是window.i ++从未发生过,当我运行此代码时,浏览器会冻结。

以下是我正在努力解决的代码段:

<input type="text" autocomplete="off">

有没有办法可以在成功回调时增加循环变量?

1 个答案:

答案 0 :(得分:2)

使用成功处理程序发送下一个请求。不要使用while循环。

//these dont have to be global
var i = 0;
var iterations = 5;
function send() {
  google.script.run
  .withSuccessHandler(function() {
    i++;
    if (i < iterations) {
      send();
    }
  })
  .sendNow();
}