まとめ

最後に、ここまで見てきたBabelの特徴をまとめます。

  • Babelとはコードをコードに変換するトランスパイラである。

  • 変換ルールはプラグインやプリセットで提供されている。

  • babel コマンドを直接叩いて変換することもできるが、ライブラリごとに独自の設定方法が用意されていることが多い。

  • 変換のステップは ParseTransformGenerate の3ステップ。

  • Parserをカスタマイズすることはできない。

    • つまりECMAScriptではないものはParseが失敗し、変換はできない。

  • プラグインが関われるのは Transform だけ。

  • Generateはどうでもいい。

  • プラグインは、ノードの種類に対する変換メソッドという形で書く。

    • DOMのように変換後のノードを構築して置き換える

    • babel-types がとても重要な役割を果たす。

    • 変換はReactiveに実行される。

    • ミスると無限ループするやつ

  • プラグインのテストはけっこう便利。

結論としてそれほど自由度はなさそうな感じします。

Last updated