TypeScript 是 JavaScript 的类型化超集,可编译为纯 Apps 脚本。在开发 Apps Script 项目时使用 TypeScript 可带来以下好处:
本指南介绍了使用 TypeScript 开发 Apps 脚本项目的一些常见任务。
要求
如果您不熟悉 TypeScript,请先查看 TypeScript 文档和 TypeScript 快速入门,熟悉基本概念,然后再尝试执行本指南中介绍的任何步骤。
如需在包含 clasp
的 Apps 脚本项目中使用 TypeScript,您需要以下工具。虽然在 Apps Script 中启用 TypeScript 并不严格需要使用 clasp
,但强烈建议您使用 clasp
,因为它可以大大简化相关流程。
在尝试下面介绍的任何流程之前,请确保您已安装以下内容,以启用本地开发环境:
- Node 和 npm
clasp
:npm install -g @google/clasp
- Apps 脚本的类型定义:
npm i -S @types/google-apps-script
- Visual Studio Code(适用于 TypeScript IDE 自动补全)
如果您之前未使用过 clasp
,请务必熟悉 clasp
文档
。
在 Clasp 项目中使用 TypeScript
您可以使用 clasp
快速创建新的本地 Apps 脚本项目。此命令会创建 appsscript.json
和 Code.gs
,它们是 Apps Script 项目的基础。
如需在 Apps 脚本文件中使用 TypeScript,只需将文件扩展名从 gs
重命名为 ts
即可。
修改本地 TypeScript 文件
您可以使用首选编辑器,在项目文件夹中将本地 TypeScript 文件编写为 .ts
文件。
例如,名为 index.ts
的文件可能包含以下 TypeScript 代码:
const greeter = (person: string) => {
return `Hello, ${person}!`;
}
let user = 'Grant';
Logger.log(greeter(user));
您可以使用 ES6+ 功能(例如箭头函数和字符串插值 [${var}
])编写 TypeScript。当您将项目推送到 Apps 脚本服务器时,这些文件会转译为 Apps 脚本结构体。
上传使用 TypeScript 的本地 Apps 脚本项目
修改完本地 TypeScript 和 Apps Script 文件后,您可以使用以下 clasp
命令将本地文件上传到 Google 云端硬盘:
clasp push --watch
此命令会监控 TypeScript 文件更改,并使用 typescript
编译代码,使用 clasp
将项目上传到 Google 云端硬盘。
报告问题或提交功能请求
如果您在使用 clasp
工具时遇到问题,可以前往 GitHub 上报告问题。
如果您遇到 TypeScript 本身的问题或 bug,可以在 TypeScript 的 GitHub 代码库中报告。