Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
78 lines (51 sloc) 1.96 KB
id: babel-preset-stage-2
title: @babel/preset-stage-2
sidebar_label: stage-2

As of Babel v7, all the stage presets have been deprecated. Check the blog post for more information.

For upgrade instructions, see the README.

The gist of Stage 2 is:

Stage 2: draft

What is it? A first version of what will be in the specification. At this point, an eventual inclusion of the feature in the standard is likely.

What’s required? The proposal must now additionally have a formal description of the syntax and semantics of the feature (using the formal language of the ECMAScript specification). The description should be as complete as possible, but can contain todos and placeholders. Two experimental implementations of the feature are needed, but one of them can be in a transpiler such as Babel.

What’s next? Only incremental changes are expected from now on.


npm install --save-dev @babel/preset-stage-2


Via .babelrc (Recommended)


  "presets": ["@babel/preset-stage-2"]


babel script.js --presets @babel/preset-stage-2

Via Node API

require("@babel/core").transform("code", {
  presets: ["@babel/preset-stage-2"]



boolean, defaults to false.

Enable "loose" transformations for any plugins in this preset that allow them.


boolean, defaults to false.

Will use the native built-in instead of trying to polyfill behavior for any plugins that require one.


boolean, defaults to false.

Use the legacy (stage 1) decorators syntax and behavior.