Answers:
实际上,“图书馆解决方案”是您最好的选择。它虽然听起来并不复杂,但是却需要一点时间的工作。
首先,您在一个电子表格中创建脚本(我们称其为主电子表格)。
通过在脚本编辑器中单击文件→管理版本来保存脚本的版本,并为您的版本命名:
关闭此对话框,然后转到文件→项目属性。在这里,找到Project键,它是字符的接缝随机组合:
复制或记下项目密钥。
创建新的电子表格并要重用脚本后,请转到脚本编辑器,然后单击资源→库(如果尚未保存新脚本,则系统现在会要求您这样做)。
在“ 查找库”字段中,粘贴主项目中的项目密钥(1),然后单击“ 选择”(2):
这将使用您的主脚本填充列表。给它起一个更友好的名称(3),然后打开“ 开发模式”(4)(这将允许您调试该库)。选择脚本的最新版本(5)。
现在,您可以在新脚本中使用包含的库中的函数。只需在函数名称之前添加您在(3)中指定的名称,这样,如果您将库标识为MyLibrary
,并且库具有myFunction
要调用的函数,则可以调用MyLibrary.myFunction()
。
要更新库时,只需这样做,然后保存文件。任何依赖于库的脚本都将看到更新的库代码。
我只是将此练习作为概念验证:
function myFunction() {return "Foo"}
MyLibrary
Logger.log(MyLibrary.myFunction)
Foo
function myFunction() {return "Bar"}
Bar
因此,在初始设置后,这确实非常简单。有关真实示例,请参见我的Google云端硬盘上的此文件夹。
将您的脚本作为附件发布。请记住,您可以将其设为公开,不公开或私有,并与Google网上论坛共享。
脚本库由2014年添加的附加组件代替。
为了发布附加组件,您应该支付5美元的费用才能将附加组件发布到Chrome网上应用店。如果您将插件设为公开,则在公开发布之前应先经过Google的审查,但是如果您将其私有化(仅限于Google网上论坛),则几分钟后即可使用。
发布加载项的另一种方法是使用加载项测试功能,但这有一些限制,例如不可能“测试”触发器,这取决于您的脚本是否可能是一个重要的限制。
使用附加组件比使用库更好,这是因为库可能会降低电子表格的运行速度,但特别是因为从最终用户的角度来看,使用add和使用它比添加添加脚本项目更容易,添加调用库并添加库本身所需的代码。
附加组件创建者的一个优势是,附加组件用户将无法从附加组件本身查看附加代码。
另一方面,它需要一些具有特定格式和大小要求的图像,对于某些用例而言,这些图像可能被认为过于复杂,我们最终可以考虑对脚本进行复制/粘贴或对电子表格(文档/表格)进行复制/ presentation)是这些用例的直接解决方案。
参考文献
您应该尝试谈论的Google Clasp
创建的脚本项目绑定到的父文件的驱动器ID
没尝试过,但是看起来有一些用于检索项目脚本代码,创建和更新的命令:
半路是从项目中下载文件。
我找到了实现此目的的工具:
http://googleappsscriptexport.trototype.com/ ,作者kerem tiryaki
坏处
GoogleAppsScriptExporterForAll现在可以访问您的Google帐户(必须手动删除)
我还使用此插件来集成Git-Hub和Google表格脚本:https : //chrome.google.com/webstore/detail/google-apps-script-github/lfjcgcmkmjjlieihflfhjopckgpelofo
安装此插件后,您需要:
坏处
用户仍然必须打开脚本编辑器并复制代码。
对我来说,下一步是:
*.js
文件合并为单行文件。成功使用https://jscompress.com/ =)