君は心理学者なのか?

大学時代に心理学を専攻しなぜかプログラマになった、サイコ(心理学)プログラマかろてんの雑記。

babelで現在のnodeJsのバージョンに合わせてトランスパイルする

** あとで少し追記する

babelのinstall

yarn init -y
yarn add @babel/cli --dev
yarn add @babel/core --dev

コンパイルするソース

class Hoge {
  constructor() {
  }
}
const hoge = new Hoge();

コンパイル

何も入れず、そのままコンパイルしてみる

yarn run babel index.js
class Hoge {
  constructor() {
  }
}
const hoge = new Hoge();

そのままでてきた。

@babel/preset-envを入れてみる

今まではbabel-preset-es2015など、 トランスパイルするときに参照する仕様をパッケージに追加する必要があった。

しかし、@babel/preset-envを用いれば、 実行環境に合わせて勝手にパッケージを追加してくれる。

また、ブラウザを指定した変換ができたりする。

今回はnode上で動くようにトランスパイルするので、 .babelrcを以下のように指定。

yarn add @babel/preset-env --dev
{
  "presets": [
    [
      "@babel/preset-env",
      {
        "useBuiltIns": "entry",
        "targets": {
          "node": "current"
        }
      }
    ]
  ]
}