JavaScript
ECMAScript のサポート
Turbopack は JavaScript および TypeScript ファイルをバンドルするためにSWC (新しいタブで開きます)を使用しています。そのため、ECMAScript のバージョンに対する SWC のサポートに一致させます。SWC がサポートするものはすべて、Turbopack もサポートします。
これは、デフォルトでESNext のすべての構文をサポートすることを意味します。
Browserslist
Browserslist (新しいタブで開きます)は、ターゲットとするブラウザを定義するための業界標準となっています。これを利用するには、browserslist
フィールドをpackage.json
に追加できます。
{
"browserslist": [
"last 1 version",
"> 1%",
"not dead"
]
}
Turbopack は、Browserslist をすぐに使える状態でサポートしています。package.json
で見つけた情報を SWC に渡し、SWC がbrowserslist
のサポート (新しいタブで開きます)を処理します。
これは、Turbopack を使用して、レガシーブラウザをターゲットにしたり、モダンブラウザにのみコードを配信することを決定したりしても、安心して使用できることを意味します。
Turbopack は開発サーバーを備えたベータプレビューで利用可能であり、開発中の変換を最小限に抑えるために、事前に設定された最小限の browserslist を使用します。将来のリリースでは、Turbopack は定義された browserslist をターゲットとする本番環境向けにアプリを構築します。
Babel
Babel (新しいタブで開きます)を使用すると、カスタム構文や初期の言語提案のサポートなど、カスタム変換をコードに追加できます。
現在、Turbopack では Babel プラグインはサポートされていません。デフォルト構成では、JavaScript または TypeScript コードのコンパイルに Babel を使用しません。
将来、Babel のサポートはプラグインを介して提供される予定です。