TypeScript es un superconjunto tipado de JavaScript que se puede compilar en Apps Script simple. Cuando usas TypeScript en el desarrollo de un proyecto de Apps Script, obtienes los siguientes beneficios:
- Autocompletado del IDE local
- Escritura estructural opcional
- Inferencia de tipos y interfaces
- Funciones de ES6, como clases y funciones de flecha.
En esta guía, se abarcan algunas tareas comunes para desarrollar un proyecto de Apps Script con TypeScript.
Requisitos
Si no conoces TypeScript, revisa la documentación de TypeScript y la guía de inicio rápido de TypeScript para familiarizarte con los conceptos básicos antes de intentar realizar cualquiera de los procedimientos que se describen en esta guía.
Se requieren las siguientes herramientas para usar TypeScript en proyectos de Apps Script con clasp
. Si bien no es estrictamente necesario usar clasp
para habilitar el uso de TypeScript en Apps Script, se recomienda hacerlo, ya que simplifica mucho los procedimientos.
Antes de intentar cualquiera de los procesos que se describen a continuación, asegúrate de haber instalado lo siguiente para habilitar tu entorno de desarrollo local:
- Node y npm
clasp
:npm install -g @google/clasp
- Definiciones de tipos para Apps Script:
npm i -S @types/google-apps-script
- Visual Studio Code (para la función de autocompletar del IDE de TypeScript)
Asegúrate de familiarizarte con la documentación de clasp
si no usaste clasp
anteriormente.
Cómo usar TypeScript en un proyecto de Clasp
Puedes usar clasp
para crear rápidamente un nuevo proyecto local de Apps Script.
Este comando crea un appsscript.json
y un Code.gs
, que son la base de un proyecto de Apps Script.
Para usar TypeScript en un archivo de Apps Script, simplemente cambia la extensión del archivo de gs
a ts
.
Edita archivos locales de TypeScript
Con tu editor preferido, puedes escribir archivos TypeScript locales como archivos .ts
en la carpeta del proyecto.
Por ejemplo, un archivo llamado index.ts
podría tener el siguiente código de TypeScript:
const greeter = (person: string) => {
return `Hello, ${person}!`;
}
let user = 'Grant';
Logger.log(greeter(user));
Puedes escribir TypeScript con funciones de ES6+ como funciones de flecha y la interpolación de cadenas (${var}
). Estos archivos se transpilan en construcciones de Apps Script cuando envías el proyecto al servidor de Apps Script.
Sube un proyecto local de Apps Script que use TypeScript
Cuando termines de editar los archivos locales de TypeScript y Apps Script, puedes subirlos a Google Drive con el siguiente comando clasp
:
clasp push --watch
Este comando supervisa los cambios en los archivos de TypeScript y usa typescript
para compilar el código y clasp
para subir el proyecto a Google Drive.
Informa problemas o envía solicitudes de funciones
Si tienes algún problema con la herramienta clasp
, puedes informarlo en GitHub.
Si encuentras un problema o error con TypeScript, puedes informarlo en el repositorio de GitHub de TypeScript.