我发现Google协作平台上的Google Apps脚本小工具的加载时间不一致。小工具加载过程似乎有两个可见的阶段 - “空白”时段和带有“加载”动画的时段。谁能解释这两个阶段之间的关系?我怀疑但是在加载动画完成之前无法知道我的代码没有开始执行。这是真的吗?
我的脚本在到达加载动画后似乎表现得相对一致。我已经查看了有关优化Google Apps脚本性能的可用文档,并且我已经能够为我的要求获得合理的加载时间,但是小工具有时需要花费很长时间 - 超过60秒 - 在加载动画出现之前没有内容
我有一个页面上有三个Google Apps脚本小工具,有三个非常不同的性能配置文件。我正在从其中两个电子表格中加载数据,但我需要在另一个中迭代Google Contacts,这需要相当长的时间。在我看来,一旦其中一个脚本点击“加载”动画,它们都会很快开始执行,但我作为开发人员所做的任何事情都不会影响加载动画之前的时间。
答案 0 :(得分:1)
在Javascript(或GAS)中进行服务器调用时,Web浏览器是单线程的,因此它需要完成对服务器的所有函数调用,然后才能从服务器返回值并呈现页面。解决方法是在页面上创建一个简单的按钮来启动GAS流程,然后在按下按钮时通过clienthandler启动加载屏幕。当进程在后台进行时,加载屏幕将显示,当您最终完成进程时,可以将加载屏幕(面板)可见性设置为false。
不是最优雅的解决方案,但您的初始页面会快速呈现,然后您设置一个面板(如果您愿意,可以使用动画gif加载图形)告诉用户页面正在加载。
希望这有帮助!
答案 1 :(得分:0)
有趣的问题。但是,我担心我们无能为力。 好吧,除了向谷歌抱怨外:)
我猜你应该打开一个"增强请求"在issue tracker。