【发布时间】:2021-05-20 15:17:07
【问题描述】:
我在开发 Gmail 插件时注意到一件奇怪的事情。
每次从卡片(例如,从 TextButton)执行操作时,项目中所有脚本的代码都会执行。
例如,如果我在项目中添加一个只包含这一行的脚本:
Logger.log("TEST LOG")
这行被执行...我可以在执行日志中看到“TEST LOG”。
这与我的预期相反——只有用 setFunctionName() 设置的函数会被执行。
这是预期的行为吗?可以避免吗?
它只发生在开发模式还是生产模式(例如在市场上发布的项目)?
【问题讨论】:
-
这是应用程序脚本的典型行为。所有全局变量都会重新初始化,并且在每次函数执行时都会调用所有全局函数。
-
你什么意思,在这个例子中你看到函数之外的所有东西都被调用ibb.co/NrpPrbD