Package Exports
- babel-plugin-transform-es2015-parameters
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (babel-plugin-transform-es2015-parameters) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
babel-plugin-transform-es2015-parameters
Compile ES2015 default and rest parameters to ES5
This plugin transforms ES2015 parameters to ES5, this includes:
- Destructuring parameters
- Default parameters
- Rest parameters
Examples
In
function test(x = "hello", { a, b }, ...args) {
console.log(x, a, b, args);
}
Out
function test() {
var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "hello";
var _ref = arguments[1];
var a = _ref.a,
b = _ref.b;
for (var _len = arguments.length, args = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
args[_key - 2] = arguments[_key];
}
console.log(x, a, b, args);
}
Installation
npm install --save-dev babel-plugin-transform-es2015-parameters
Caveats
Default parameters desugar into let
declarations to retain proper semantics. If this is
not supported in your environment then you'll need the
transform-block-scoping plugin.
Usage
Via .babelrc
(Recommended)
.babelrc
{
"plugins": ["transform-es2015-parameters"]
}
Via CLI
babel --plugins transform-es2015-parameters script.js
Via Node API
require("babel-core").transform("code", {
plugins: ["transform-es2015-parameters"]
});