TypeScript の const enum でちょろっとハマった

読了まで:約0分


まあ、ハマってたと言ってもちょっとだけなんですが、

に書かれているconst enum の仕様を把握していなくて、

TypeScript で export した enum が undefined になってコードが動かん。なんでや?

ってなってました。 で、詳しい話は、上記リンク先のサンプルコード読めば判るんですが、今日ハマっていた内容としては、

export const enum Foo { Bar = 1 };

とかしていると、これが Foo.Bar と言う定数の宣言みたいになって、TypeScript から JavaScript へ emit する時に、 その定数みたくなっている Foo.Bar がインライン展開され JavaScript からは Foo.Bar が見えなくなる、という TypeScript の仕様にハマった、という話です。

ま、言語仕様とかはキチンと把握しとけって話ですね。はい。

にゃるら(カラクリスタ)

『輝かしい青春』なんて失かった人。
次に備えて待機中。

今は趣味でプログラミングをして
生活しています。