【问题标题】:Formerly Working Code that Calls google.script.run. Failing以前调用 google.script.run 的工作代码。失败
【发布时间】:2017-04-21 13:49:49
【问题描述】:

今天下午发生了一些变化,破坏了我所有部署为网络应用程序的 Google 应用程序脚本。目前每次调用:

google.script.run.[任何东西]

从界面(HTML 端)到后端失败。如果你去 Chrome 的控制台之类的东西,它会显示以下内容:

未捕获的类型错误:无法读取未定义的属性“运行”

Firefox 的开发者工具更加明确:

TypeError: google.script 未定义

所以不知何故 google.script 不再定义。这是谷歌引入的错误吗?我们现在是否需要调用脚本来获取这些方法(就像我们需要调用https://apis.google.com/js/api.js?onload=onApiLoad 来获取其他功能一样)?

谢谢!

【问题讨论】:

  • 你的意思是“以前”而不是“正式”对吧?
  • 我实际上在几个小时后遇到了同样的问题,也许这是一个临时问题。编辑:它已作为错误提交:issuetracker.google.com/issues/37544412
  • 它在我的侧边栏和对话框中工作。我没有任何网络应用程序。
  • 我的工作正常。也许它只是固定的?或者也许它只是推送给某些用户的更新。我的帐户是 G Suite 帐户,因此我认为我们得到的更新略有不同。

标签: javascript html google-apps-script


【解决方案1】:

see workaround。您需要使用 Google API Loader 库来加载 Google File Picker。

【讨论】:

  • 感谢您的解决方法!但是,我希望我能理解它为什么起作用。当我们调用 onload get 参数时是否存在竞争条件?我不明白为什么文件选择器的加载方法会影响 google.script 方法。
  • 来自 Google Apps 脚本团队的 @tazz_ben Erik 说“问题的原因是当 Picker API 加载到 google.picker 时,它当前正在覆盖 google.script,所以 google.script.run () 调用开始失败。” issuetracker.google.com/issues/37127474#comment36
猜你喜欢
  • 2018-10-18
  • 2019-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-11
  • 2013-05-09
相关资源
最近更新 更多