Google Apps Script Sheets 功能停止工作,再也不会工作

问题描述

我在 Google Apps Scripts for Sheets 中遇到了一个问题,这可能是他们系统中的错误,或者是我不理解的“功能”。

我什至无法清楚地描述这个问题,但让我描述一下,希望某个地方的某个人知道可能会发生什么。

我正在为电子表格构建应用程序,并将代码拆分到多个文件中。在某些时候,我的新电子表格函数(称为 SCHEDULE)将停止响应。这是我能描述它的最好方式。它要么不返回,要么返回一个空范围(我不知道是哪个)。它不会抛出错误,也不会返回我要求它返回的内容

那么:

  • 如果我撤消在功能中断之前所做的更改,它不会重新开始工作。我可以将函数剥离回一个简单的 return [["I ran"]],但它仍然无法工作。除非我删除它所在的文件,然后重新创建该文件,否则它将永远不会再工作。
  • 如果我撤消更改并将函数重命名(例如为 SCHEDULE2),它将再次开始工作
  • 如果我重命名函数并且不更新电子表格中的引用,它不会给我一个 NAME? 错误,如果函数未定义,这就是您所期望的
  • 如果我撤消更改,重命名函数(例如,为 SCHEDULE3),然后重新执行之前破坏它的更改,该函数将起作用

对我来说,这感觉可能有两个问题在起作用:

  1. 调用分布在多个文件中的资源的函数可能随机无法在 Apps 脚本运行时级别执行。我从来没有遇到过单个文件中的应用程序脚本的问题。我还设法证明脚本不会在特定代码行处中断;添加似乎第一次导致损坏的特定行,下次我尝试时会起作用。

  2. Apps Script 运行时以某种方式缓存了一个函数,一旦它无法响应,它的响应失败就会被缓存。我想这可能是“损坏”函数的实际缓存,或者该函数注册为失败,并且 Apps 脚本运行时拒绝再次运行它。

一些可能相关的附加上下文:

  • 这不是公共或分布式应用程序,我仅通过工具 -> 脚本编辑器从电子表格创建了它
  • 脚本的实际错误按预期报告,前提是它们在函数停止响应之前发生

非常感谢任何建议、提示或指示

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)