TypeScript は、プレーンな Apps Script にコンパイルできる JavaScript の型付きスーパーセットです。Apps Script プロジェクトの開発で TypeScript を使用すると、次のような利点があります。
このガイドでは、TypeScript を使用して Apps Script プロジェクトを開発するための一般的なタスクについて説明します。
要件
TypeScript に詳しくない場合は、TypeScript のドキュメントと TypeScript のクイックスタートをお読みになり、このガイドで説明する手順を行う前に、基本的なコンセプトをよく理解してください。
clasp
を使用して Apps Script プロジェクトで TypeScript を使用するには、次のツールが必要です。Apps Script で TypeScript を使用できるようにするために clasp
を使用することは必須ではありませんが、手順が大幅に簡素化されるため、使用を強くおすすめします。
以下に示すプロセスのいずれかを実行する前に、ローカル開発環境を有効にするために、以下がインストールされていることを確認してください。
- Node と npm
clasp
:npm install -g @google/clasp
- Apps Script の型定義:
npm i -S @types/google-apps-script
- Visual Studio Code(TypeScript IDE のオートコンプリート用)
clasp
を初めて使用する場合は、clasp
のドキュメント
をよくお読みください。
クラスプ プロジェクトで TypeScript を使用する
clasp
を使用すると、簡単に新しいローカル Apps Script プロジェクトを作成できます。このコマンドにより、Apps Script プロジェクトのベースである appsscript.json
と Code.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));
矢印関数や文字列補間(${var}
)などの ES6+ 機能を使用して TypeScript を記述できます。これらのファイルは、プロジェクトを 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 リポジトリで報告できます。