我开始使用Google App Scripts,而我对JavaScript的了解很少,我尝试了以下内容。我收到一个错误,但脚本似乎确实有效。
为什么会出错?当我按下小播放按钮时,它似乎特别想要运行一个功能..如下所示构建谷歌应用程序脚本文档是不是很糟糕?
(function (id) {
var sheet = SpreadsheetApp.openById(id).getSheets()[0];
var data = sheet.getDataRange().getValues();
Logger.log(data);
sheet.appendRow(['this','is','another', 'bigger','test','of','stuff']);
})('1BXDicksYS19jre0tZKHEjqqyvdzbhbtFfSm053q2sZ0')
===编辑===
Google Apps脚本不应该从IIFE运行,因为它想要明确地触发一个功能。是的我认为,在一年后我仍然有限的经历中,这将是一个编写Google Apps脚本的糟糕方式。
答案 0 :(得分:1)
Google Apps脚本不应该从IIFE运行,因为它想要明确地触发一个功能。是的我认为,在一年后我仍然有限的经历中,这将是一个编写Google Apps脚本的糟糕方式。
答案 1 :(得分:0)
以.gs结尾的Google App Scripts文件在加载文件时不会像JavaScript中那样运行文件中的所有功能。
要在上面使用的.gs文件中运行功能,您需要添加电子表格的触发器onOpen或onEdit。 在打开/编辑时:https://developers.google.com/apps-script/guides/triggers/
您可以根据特定的h / d / m条件设置时间触发器。 可安装的触发器: https://developers.google.com/apps-script/guides/triggers/installable
如果要将其连接到Google网络应用,则需要使用google.scripts.run.functionName() 在客户端运行.gs函数: https://developers.google.com/apps-script/guides/html/reference/run
请勿在.gs文件中使用立即调用的函数。由于Google App脚本文件树的工作方式,最好为.gs函数使用非常特定的名称。
所有功能都可以在google app脚本文件树中的任何文件中访问,这意味着您可以在google app脚本中的任何文件中调用任何函数。
在此结构中具有没有名称的函数将导致无法调用无名函数。希望有帮助。