【发布时间】:2020-05-19 19:20:52
【问题描述】:
我知道谷歌应用脚本中的全局变量存在一些问题(或者说,与“正常”代码不同的工作方式):
Issues with global variables in Google App Script
How to define global variable in Google Apps Script
Global variables in Google Script (spreadsheet)
还有很多例子,但问题是,在Google Apps script documentation中,他们提到在onOpen函数中,传递了一个事件对象,其中包含一个源属性,它链接到当前文档:
source 一个 Document 对象,代表 Google Docs 文件, 脚本已绑定。
文档
现在,如果您无论如何都必须致电DocumentApp.getActiveDocument(),那么让我们访问此来源的意义何在?我尝试在代码顶部创建一个全局变量:
变量文档;
然后在onOpen(e) 函数中,将其设置为:doc = e.source,在该函数中工作正常,但是当我想在客户端调用的另一个函数中使用它时,“全局”变量“doc”是undefined 或 null,那么我该如何设置它,这样我就不必在每次客户端单击某些东西时调用 DocumentApp.getActiveDocument()?因为它需要大约 50-70 毫秒,尽管它非常快,但它可能会更快......有什么解决方法吗?
基本上:如何将DocumentApp.getActiveDocument() 存储在可重用变量中?如果我不能,为什么onOpen 中的事件对象中提供了源属性? (事实上它意味着它可能将它存储在某个地方)
【问题讨论】:
标签: javascript google-apps-script global-variables