GAS+Typescriptのクラスの継承でちょっとハマるなど

今日も今日とてGoogle Apps Scriptの開発。 classとextendsを使ってオブジェクト指向らしく継承を使って効率的にやろうと思ったのだが・・・

  1. tslintにて1ファイル1クラスにせよと言われてファイル分割
  2. GASにデプロイするとなぜかclassをextendsする部分でエラーを吐く

という状態に。

よくよく追ってみると、継承しようとした時点で元となるほうのclassが未定義な様子。

ただ、昨日作ってたほぼほぼ同じ内容のclassの方では全く問題がなく、小一時間悩み、コンパイル済みのコードの方の各所にLogger.logを仕込んで観察してみたところ・・・

要はGASに上げた時のファイル名順にコードが実行されているので、継承元の方が先に読まれるようなファイル名にしなければいけないようだ。

(完全に検証してはいないけど)これが上げた後にWeb上でファイル名を変更しても駄目そうなのが厄介。

まあそもそもGASで長大なコードを扱うべきじゃない気もするし、別のプロジェクトとして上げた上でimportしたほうが良いのかもしれないけど。


フリクリ小説版2巻読了。

フリクリ 2 (角川スニーカー文庫)

フリクリ 2 (角川スニーカー文庫)

ニナモリ回とアマラオ初登場回。どちらも幼少の全能感が偽りであると薄々気づきつつも「特別ではない自分」を受け入れ難いジレンマみたいな話に読めた。