@babel/preset-stage-1
非官方测试版翻译
本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →
Stage 1 的核心要点是:
阶段 1:提案阶段
这是什么? 特性的正式提案。
需要什么? 必须确定一位负责该提案的负责人(champion)。负责人或共同负责人中必须有一位是 TC39 成员。提案要解决的问题需用文字描述清楚。解决方案需通过示例、API 设计以及语义和算法讨论来说明。最后,必须识别提案的潜在障碍,如与其他特性的交互及实现挑战。实现方面需要提供 polyfill 和演示案例。
后续步骤? TC39 接受阶段 1 提案即表明愿意审查、讨论并贡献该提案。后续预计会出现重大变更。
安装
- npm
- Yarn
- pnpm
- Bun
npm install --save-dev @babel/preset-stage-1
yarn add --dev @babel/preset-stage-1
pnpm add --save-dev @babel/preset-stage-1
bun add --dev @babel/preset-stage-1
用法
通过配置文件(推荐)
babel.config.json
{
"presets": ["@babel/preset-stage-1"]
}
通过命令行
Shell
babel script.js --presets @babel/preset-stage-1
通过 Node API
JavaScript
require("@babel/core").transformSync("code", {
presets: ["@babel/preset-stage-1"]
});
配置选项
loose
boolean,默认值 false
为本预设中支持该功能的插件启用"松散"转换模式。
useBuiltIns
boolean,默认值 false
对于需要polyfill行为的插件,将直接使用原生内置功能而非尝试polyfill实现。
decoratorsLegacy
boolean,默认值 false
使用旧版(阶段1)装饰器的语法和行为。
参考
- Axel Rauschmayer 所著《Exploring ES2016 and ES2017》中的章节:《TC39 的 ECMAScript 特性流程》