shichen b6c5ecc67a init 10 meses atrás
..
lib b6c5ecc67a init 10 meses atrás
.npmignore b6c5ecc67a init 10 meses atrás
README.md b6c5ecc67a init 10 meses atrás
package.json b6c5ecc67a init 10 meses atrás

README.md

babel-plugin-transform-object-rest-spread

This plugin allows Babel to transform rest properties for object destructuring assignment and spread properties for object literals.

Example

Rest Properties

let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 };
console.log(x); // 1
console.log(y); // 2
console.log(z); // { a: 3, b: 4 }

Spread Properties

let n = { x, y, ...z };
console.log(n); // { x: 1, y: 2, a: 3, b: 4 }

Installation

npm install --save-dev babel-plugin-transform-object-rest-spread

Usage

Via .babelrc (Recommended)

.babelrc

{
  "plugins": ["transform-object-rest-spread"]
}

Via CLI

babel --plugins transform-object-rest-spread script.js

Via Node API

require("babel-core").transform("code", {
  plugins: ["transform-object-rest-spread"]
});

Options

useBuiltIns

boolean, defaults to false.

By default, this plugin uses Babel's extends helper which polyfills Object.assign. Enabling this option will use Object.assign directly.

.babelrc

{
  "plugins": [
    ["transform-object-rest-spread", { "useBuiltIns": true }]
  ]
}

In

z = { x, ...y };

Out

z = Object.assign({ x }, y);

References