TypeScript を使用した Apps Script の開発

TypeScript は、プレーンな Apps Script にコンパイルできる JavaScript の型付きスーパーセットです。Apps Script プロジェクトの開発で TypeScript を使用すると、次のようなメリットがあります。

このガイドでは、TypeScript を使用して Apps Script プロジェクトを開発する際の一般的なタスクについて説明します。

要件

TypeScript に詳しくない場合は、TypeScript のドキュメントTypeScript クイック スタートを確認して、このガイドで説明する手順を試す前に、基本的なコンセプトを理解してください。

clasp を使用して Apps Script プロジェクトで TypeScript を使用するには、次のツールが必要です。Apps Script で TypeScript を使用するには clasp の使用は必須ではありませんが、手順が大幅に簡素化されるため、使用することを強くおすすめします。

以下のプロセスを試す前に、ローカル開発環境を有効にするために次のものをインストールしていることを確認してください。

clasp を使用したことがない場合は、必ず clasp のドキュメント をよく読んでください。

Clasp プロジェクトで TypeScript を使用する

clasp を使用すると、新しいローカル Apps Script プロジェクトをすばやく作成できます。このコマンドは、Apps Script プロジェクトのベースとなる appsscript.jsonCode.gs を作成します。

App Script ファイルで TypeScript を使用するには、ファイル拡張子を gs から ts に変更します。

ローカルの TypeScript ファイルを編集する

任意のエディタを使用して、ローカル TypeScript ファイルをプロジェクトのフォルダ内の .ts ファイルとして書き込むことができます。

たとえば、index.ts という名前のファイルには、次の TypeScript コードが含まれます。

const greeter = (person: string) => {
  return `Hello, ${person}!`;
}

let user = 'Grant';
Logger.log(greeter(user));

TypeScript では、アロー関数や文字列補間(${var})などの ES6+ 機能を使用できます。これらのファイルは、プロジェクトを Apps Script サーバーに push すると、Apps Script 構造にトランスパイルされます。

TypeScript を使用するローカルの Apps Script プロジェクトをアップロードする

ローカルの TypeScript ファイルと Apps Script ファイルの編集が完了したら、次の clasp コマンドを使用して、ローカルファイルを Google ドライブにアップロードできます。

clasp push --watch

このコマンドは、TypeScript ファイルの変更を監視し、typescript を使用してコードをコンパイルし、clasp を使用してプロジェクトを Google ドライブにアップロードします。

問題を報告する、または機能リクエストを提出する

clasp ツールで問題が発生した場合は、GitHub で報告できます。

TypeScript 自体に関する問題やバグが発生した場合は、TypeScript の GitHub リポジトリで報告できます。