GASをローカル・TypeScriptで実装するためのClasp環境構築
やりたいこと
- GASのスクリプトをTypeScriptで書きたい
- ローカルで開発しバージョン管理したい
解決法
Googleが提供しているClaspを利用することで実現できる。
1. Google Apps Script APIを有効化
設定ページにアクセスし、トグルボタンを操作して有効化する。
2. Claspをインストール
GAS関数の型定義のために@types/google-apps-script
もインストールしておく。
3. ログイン
自分のGoogleアカウントにログインする。
※もしnpmパッケージをグローパルではなくそのプロジェクトにインストールした場合は、clasp
コマンドを叩く際にnpx clasp xxx
と叩く必要がある。
と表示されるので「許可する」をクリック。
とCUI上で出力され、ホームディレクトリ下に.clasprc.json
が生成されればOK。
4. プロジェクト作成
どのアプリケーションと紐づけるか聞かれるので、任意のものを選択する。例えばスプシのスクリプトを書きたい場合はsheets
を選ぶ。
今回のサンプルではどれとも紐付けないプレーンのものにしたいのでstandalone
を選択。
すると上記2ファイルが生成される。
さらにGoogleドライブのマイドライブ下にスクリプトが作成されていることが確認できる。
5. TypeScriptの設定
tsconfig.json
を作成し、公式ドキュメントに沿い上記のように追記する。
6. コードを書く
main.ts
のような適当なファイルをルート直下に作成。
サンプルのコードを書く。
7. デプロイ
ローカルのソースコードをGoogle環境に反映する。
対象のWebエディターを手っ取り早く開きたい場合は上のコマンドを叩けばOK。
すると無事にApps Scriptの画面に、書いたコードがコンパイルされつつ反映されていることが確認できた。
実行結果も問題なし。
参考