在本地安装的IDE中启用Google Apps脚本的自动填充功能

Ant*_*iev 15 google-apps-script visual-studio-code clasp

我正在尝试使用clasp在本地构建GAS项目

https://github.com/google/clasp

任何本地安装的IDE都是对Google脚本编辑器的巨大改进,因此该工具看起来非常有前景.遗憾的是,GAS服务的自动完成功能似乎不包含在软件包中.

文件说:

Apps Script CLI使用TypeScript在开发时提供自动完成和linting.使用类似Visual Studio Code的IDE进行TypeScript自动完成.

完成所有必需的依赖项后,我仍然无法使用自动完成功能.当我为现有项目执行"clasp pull"命令时,它将".gs"扩展名转换为".js".自动填充建议只是解析现有代码的结果.

例如,如果我在我的代码中的某处调用了sheet.getRange(),那么'getRange()'方法会在建议中弹出,但我不能列出可用的选项,比如,PropertiesService,除非它已经在我的码.

有没有人为Google Apps脚本启用自动填充功能有什么好运?

Ant*_*iev 16

我找到了那种有效的解决方案,但它可能不适用于其他软件.以下步骤适用于Visual Studio代码:

1)安装包含GAS类型定义的NPM包

https://www.npmjs.com/package/@types/google-apps-script

2)在本地保存的脚本中,创建".js"文件并键入

import 'google-apps-script';
Run Code Online (Sandbox Code Playgroud)

唯一的问题是在将更新推送到服务器之前必须删除导入.

  • 使用最新的扣环,不需要步骤2和删除导入。它们是自动处理的。 (3认同)
  • 在“Visual Studio Code”中...“npm i @types/google-apps-script”单独工作以添加 **intellisense**:不需要创建额外的文件来“import 'google-apps-script'”也将任何内容添加到 `.claspignore` (3认同)
  • @rellampec 现在确实如此。截至 2018 年,情况并非如此。不过,感谢您的澄清。 (2认同)

The*_*ter 11

这个答案是其他IDE接受的一个小变化:


小智 6

怎么样:

包括文件名(例如import.js).claspignore.

这应该可以节省一些麻烦,每次推送前删除文件.


daa*_*awx 6

如果您使用的是任何 JetBrains IDE:

转到Languages & Frameworks -> JavaScript -> Libraries -> Download...并下载库google-apps-script

在此处输入图片说明


J K*_*ing 5

这是 Google 开发者在“ TU17:使用 clasp 和 TypeScript 增强 Google Apps 脚本开发人员体验”视频中提供的答案。

将 JavaScript 文件添加到您的项目中,例如“appscript.js”,然后在该文件中添加:

import "google-apps-script";
Run Code Online (Sandbox Code Playgroud)

保存该文件,但在使用文件将文件推送回项目时请确保忽略它.claspignore