@babel/preset-stage-1
ステージ1の概要
ステージ1:提案
それは何か? 機能に関する正式な提案です。
何が求められるか? 提案の責任者となる「チャンピオン」を特定する必要があります。チャンピオンまたは共同チャンピオンのいずれかは、TC39のメンバーである必要があります(出典)。提案によって解決される問題は、文章で記述する必要があります。解決策は、例、API、セマンティクスとアルゴリズムの議論を通じて記述する必要があります。最後に、他の機能との相互作用や実装上の課題など、提案の可能性のある障害を特定する必要があります。実装に関しては、ポリフィルとデモが必要です。
次は? ステージ1の提案を受け入れることで、TC39は提案の調査、議論、貢献への意思を示します。今後、提案への大きな変更が予想されます。
インストール
- npm
- Yarn
- pnpm
npm install --save-dev @babel/preset-stage-1
yarn add --dev @babel/preset-stage-1
pnpm add --save-dev @babel/preset-stage-1
使用方法
設定ファイルを使用する場合(推奨)
babel.config.json
{
"presets": ["@babel/preset-stage-1"]
}
CLI経由
シェル
babel script.js --presets @babel/preset-stage-1
Node API経由
JavaScript
require("@babel/core").transformSync("code", {
presets: ["@babel/preset-stage-1"]
});
オプション
loose
boolean
、デフォルトはfalse
。
このプリセット内のプラグインで許可されているすべてのプラグインに対して、「loose」変換を有効にします。
useBuiltIns
boolean
、デフォルトはfalse
。
必要なプラグインについては、ポリフィルで動作を試みる代わりに、ネイティブのビルトインを使用します。
decoratorsLegacy
boolean
、デフォルトはfalse
。
レガシー(ステージ1)のデコレーター構文と動作を使用します。
参考文献
- Axel Rauschmayerによる「Exploring ES2016 and ES2017」の「ECMAScript機能のためのTC39プロセス」という章