【发布时间】:2018-11-24 13:43:53
【问题描述】:
我想要实现的是创建一个基于时间的触发器,该触发器运行调用函数,当工作表中给出的日期等于每天的今天日期时,该函数负责发送邮件。
所以大部分内容都在库中,例如创建添加菜单和选择菜单项后运行的逻辑。但我认为您不能在库上设置触发器,您必须在客户端(容器绑定)端具有触发器功能。
问题是,我如何从库端调用创建触发器编程的容器绑定函数。
伪代码:
图书馆:
function A(){
//Call function B() of container bound
}
容器绑定脚本:
function B(){
//Create programmatic trigger
}
如果您有更好的建议欢迎您。
【问题讨论】:
-
文档绑定脚本中的代码将如何创建?由您以外的用户?由你?谁是文件的所有者?你。其他人?它会是您没有共享权限编辑的文档吗?
-
@SandyGood 我正在创建一个工作表插件,因此容器绑定中有一些启动代码,例如 onInstall(e) 和来自 onOpen(e) 的库调用,用于创建附加菜单。所以最初我为自己开发插件,然后我会将它发布到市场。
-
为什么要将库放入插件中? Google 建议不要这样做。
-
@SandyGood 实际上是的,这是我无法理解的地方,这是我发布的第一个附加内容。那么我是否应该将所有代码和逻辑放在容器绑定中,前提是我将进行私有添加?
-
我更喜欢将独立的 Apps 脚本文件用于附加组件。测试插件可以通过在代码编辑器中点击“运行”,然后选择“测试为插件...”来完成插件是公开的、不公开的还是私有的,不影响Apps Script项目是否文件绑定到工作表,或“独立”。一旦你发布了一个插件,你就永远不想删除那个 Apps 脚本文件。人们有时会忘记什么脚本绑定到什么Sheet文件,然后删除Sheet文件,这也删除了项目。
标签: javascript google-apps-script triggers