问题标签 [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.

0 投票
1 回答
313 浏览

google-apps-script - 以编程方式访问执行记录

我需要访问执行记录,就像访问 Logger 日志一样。例如,我可以Logger.log使用getLogs(). 如何以类似的方式访问执行记录?

0 投票
4 回答
5729 浏览

typescript - 将 Typescript 与 Google Apps 脚本结合使用

我想将 Typescript 用于我的 Google Apps Script (GAS) 项目,但我找不到将我的代码编译成 GAS 接受的东西的方法。

GAS 不支持导出,Typescript 似乎不喜欢通过全局范围访问变量(它需要导入/需要,因此需要导出)。

我正在寻找以下任何一种解决方案,我相信这些解决方案会让事情对我有用:

1) Babel 插件等可以删除所有 Import 和 Export 语句及其属性名称(要求我不使用相同的方法名称,我没有。

所以:

变成:

2)更改打字稿,使其可以看到全局范围

3) Babel 插件等,将所有 .ts 文件组合成一个 .js 文件,并通过将每个文件视为对象/函数来转换导入/导出语句。

0 投票
2 回答
10013 浏览

google-apps-script - 谷歌应用脚​​本桌面ide

我喜欢使用带有应用程序脚本的谷歌表格,但是在线脚本 ide 很麻烦(滞后...等),并且没有桌面 ide 的许多便利。希望谷歌会在某个时候制作桌面 ide。有谁知道制作谷歌应用脚​​本的一种不那么痛苦的方法?有没有支持远程更新或发布谷歌脚本的好 ide?

0 投票
5 回答
13818 浏览

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 脚本启用自动完成功能而幸运?

0 投票
1 回答
289 浏览

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

0 投票
1 回答
2403 浏览

node.js - 在 linux 上使用 clasp 时 node-v57-linux-x64-glibc/grpc_node.node 丢失

我正在使用clasp构建附加 gmail。

我创建了一个空文件夹并运行以下命令:

卡扣登录

我有这样的错误

错误:未安装 gRPC 二进制模块。这可以通过运行“npm rebuild”来修复原始错误:找不到模块'/usr/lib/node_modules/@google/clasp/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node 。节点'

我发现了一个问题,但这不是我的解决方案。

我该如何解决?

谢谢。

0 投票
0 回答
489 浏览

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),但原则应该是相同的。

0 投票
1 回答
65 浏览

google-apps-script - Google Apps 脚本库将自身从独立项目中移除

我发布了一个独立的 Google Apps 脚本项目,并将此代码包含在绑定到 4 张工作表的 4 个不同脚本中。根据这个设置,我使用 Clasp 和 TypeScript 在本地进行开发。

我遇到的问题是,有时当我通过 Clasp 推送编辑时,我在那些独立脚本中的代码(我从不编辑我的库代码)似乎删除了包含的库。显然,我在独立脚本中的代码无法执行。然后我必须在所有 4 个绑定脚本中手动重新添加库。

在所有脚本中都关闭了开发模式。

0 投票
1 回答
176 浏览

google-apps-script - 运行时卡扣失败

我正在使用卡扣来运行 AppScript

例子:

但它在这里显示错误

未找到请求的实体

请让我知道为什么会这样?

0 投票
1 回答
461 浏览

google-apps-script - 通过企业代理进行 Clasp 登录

我正在阅读有关[使用 clasp 的命令行界面] ( https://developers.google.com/apps-script/guides/clasp ) 的文章。-我可以通过 npm 使用用户/密码通过公司代理安装 clasp ...

但是,当我想使用时:

卡扣登录

它返回:

错误:您似乎处于离线状态。

如果 npm 运行良好,任何人都可以说我为什么看起来像离线?