TypeScript は、プレーンな Apps Script にコンパイルできる JavaScript の型付きスーパーセットです。Apps Script プロジェクトの開発で TypeScript を使用すると、次のようなメリットがあります。
このガイドでは、TypeScript を使用して Apps Script プロジェクトを開発する際の一般的なタスクについて説明します。
要件
TypeScript に慣れていない場合は、このガイドで説明する手順を試す前に、TypeScript のドキュメントと TypeScript クイックスタートで基本コンセプトをご確認ください。
clasp
を使用して Apps Script プロジェクトで TypeScript を使用するには、次のツールが必要です。clasp
の使用は、Apps Script で TypeScript の使用を有効にするために厳密に必要なわけではありませんが、手順が大幅に簡素化されるため、使用することを強くおすすめします。
以下で説明するプロセスを試す前に、ローカル開発環境を有効にするために、以下がインストールされていることを確認してください。
- Node と npm
clasp
:npm install -g @google/clasp
- Apps Script の型定義:
npm i -S @types/google-apps-script
- Visual Studio Code(TypeScript IDE 自動補完用)
clasp
を使用したことがない場合は、clasp
のドキュメント
をよく読む必要があります。
Clasp プロジェクトで TypeScript を使用する
clasp
を使用すると、新しいローカル Apps Script プロジェクトをすばやく作成できます。このコマンドは、Apps Script プロジェクトのベースとなる appsscript.json
と Code.gs
を作成します。
Apps 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 リポジトリで報告できます。