问题标签 [clasp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
google-apps-script - 以编程方式访问执行记录
我需要访问执行记录,就像访问 Logger 日志一样。例如,我可以Logger.log
使用getLogs()
. 如何以类似的方式访问执行记录?
typescript - 将 Typescript 与 Google Apps 脚本结合使用
我想将 Typescript 用于我的 Google Apps Script (GAS) 项目,但我找不到将我的代码编译成 GAS 接受的东西的方法。
GAS 不支持导出,Typescript 似乎不喜欢通过全局范围访问变量(它需要导入/需要,因此需要导出)。
我正在寻找以下任何一种解决方案,我相信这些解决方案会让事情对我有用:
1) Babel 插件等可以删除所有 Import 和 Export 语句及其属性名称(要求我不使用相同的方法名称,我没有。
所以:
变成:
2)更改打字稿,使其可以看到全局范围
3) Babel 插件等,将所有 .ts 文件组合成一个 .js 文件,并通过将每个文件视为对象/函数来转换导入/导出语句。
google-apps-script - 谷歌应用脚本桌面ide
我喜欢使用带有应用程序脚本的谷歌表格,但是在线脚本 ide 很麻烦(滞后...等),并且没有桌面 ide 的许多便利。希望谷歌会在某个时候制作桌面 ide。有谁知道制作谷歌应用脚本的一种不那么痛苦的方法?有没有支持远程更新或发布谷歌脚本的好 ide?
google-apps-script - 如何在本地安装的 IDE 中为 Google Apps 脚本启用自动完成功能
我正在尝试使用clasp在本地构建 GAS 项目。
任何本地安装的 IDE 都是对 Google 脚本编辑器的巨大改进,因此该工具看起来很有前途。不幸的是,GAS 服务的自动完成功能似乎没有包含在包中。
文档说:
Apps Script CLI 使用 TypeScript 在开发时提供自动补全和 linting。使用 Visual Studio Code 之类的 IDE 进行 TypeScript 自动完成。
在完成这些步骤并安装所有必需的依赖项后,我仍然无法让自动完成功能正常工作。当我clasp pull
为现有项目执行命令时,它将“.gs”扩展名转换为“.js”。自动完成建议只是解析现有代码的结果。
例如,如果我sheet.getRange()
在代码中的某处调用,则该getRange()
方法将在建议中弹出,但我无法列出可用的选项,例如PropertiesService
,除非它已在我的代码中使用。
有没有人为 Google Apps 脚本启用自动完成功能而幸运?
node.js - Google Apps 脚本 - 扣 - 未能创建脚本
按照codelabs.developers.google.com 上的这个教程:
当我运行此命令clasp create "clasp Codelab"
创建独立脚本时,我收到以下消息:
请登录。(扣住登录)
虽然我已经在login
打开浏览器之前运行了该命令,但弹出窗口显示:
clasp – Apps 脚本 CLI 想要访问您的 Google 帐户
允许
在选择允许时,我得到
登录!您可以关闭此页面。
我无法弄清楚我在这里缺少什么。任何帮助,将不胜感激。
编辑 1:我使用的是 Windows 10(64 位)。Node.js 版本 8.11.1
google-apps-script - 如何使用域范围的委托服务帐户发布 Google 应用脚本?
我正在尝试使用 Google 所称的“域范围委派”服务帐户:https ://developers.google.com/admin-sdk/directory/v1/guides/delegation
我试图通过这个代表团访问的特定 API 是:https ://developers.google.com/apps-script/api/
这是代码:
这失败了:
我很确定我已经按照https://developers.google.com/api-client-library/python/auth/service-accounts的所有步骤,包括授权“ https://www.googleapis.com /auth/script.projects的范围与我下载的服务帐户 json 密钥的客户端 ID。
请注意,我能够通过跳过with_subject
并以用户身份进入脚本仪表板并“共享”脚本项目,成功地使这个特定的片段工作。
不幸的是,尽管这仍然不允许上传一组新文件(因为“共享”不能删除)。它至少确认我的调用代码是正确的,尽管没有使用 json 服务密钥正确验证。
澄清:
- 我认为有问题的脚本被称为“独立”(不是网络应用程序)
- 它归我设置的机器人用户所有,就像普通 GSuite 用户一样(因为我不希望普通用户的 Google Drives 中有脚本)
- 该脚本在似乎是自动创建的 Google Cloud 项目中开始,并且“无组织”。然后,我在组织内手动创建了一个新项目,并将脚本移至该项目。
现在有一个官方的 Google Apps Script 客户端,所以我也在那里问过https://github.com/google/clasp/issues/225#issuecomment-400174500 - 虽然他们使用 Javascript API(通过 Typescript),但原则应该是相同的。
google-apps-script - Google Apps 脚本库将自身从独立项目中移除
我发布了一个独立的 Google Apps 脚本项目,并将此代码包含在绑定到 4 张工作表的 4 个不同脚本中。根据这个设置,我使用 Clasp 和 TypeScript 在本地进行开发。
我遇到的问题是,有时当我通过 Clasp 推送编辑时,我在那些独立脚本中的代码(我从不编辑我的库代码)似乎删除了包含的库。显然,我在独立脚本中的代码无法执行。然后我必须在所有 4 个绑定脚本中手动重新添加库。
在所有脚本中都关闭了开发模式。
google-apps-script - 运行时卡扣失败
我正在使用卡扣来运行 AppScript
例子:
但它在这里显示错误
未找到请求的实体
请让我知道为什么会这样?
google-apps-script - 通过企业代理进行 Clasp 登录
我正在阅读有关[使用 clasp 的命令行界面] ( https://developers.google.com/apps-script/guides/clasp ) 的文章。-我可以通过 npm 使用用户/密码通过公司代理安装 clasp ...
但是,当我想使用时:
卡扣登录
它返回:
错误:您似乎处于离线状态。
如果 npm 运行良好,任何人都可以说我为什么看起来像离线?