Syntax trailing function commas
This plugin allows Babel to parse trailing function commas.
function clownPuppiesEverywhere( param1, param2, ) { /* ... */ } clownPuppiesEverywhere( 'foo', 'bar', );
Example
Basic
This is an example from the Proposal.
Let’s say you have this function:
function clownPuppiesEverywhere( param1, param2 ) { /* ... */ } clownPuppiesEverywhere( 'foo', 'bar' );
If you want to have a new parameter called param3
, the diff output would be like that:
function clownPuppiesEverywhere( param1, - param2 + param2, // Change this line to add a comma + param3 // Add param3 ) { /* ... */ } clownPuppiesEverywhere( 'foo', - 'bar' + 'bar', // Change this line to add a comma + 'baz' // Add param3 );
In total, you have to change 2 lines for the function declaration and 2 lines for each usage.
If you had your function defined with trailing commas:
function clownPuppiesEverywhere( param1, param2, ) { /* ... */ } clownPuppiesEverywhere( 'foo', 'bar', );
Adding a new parameter would only change one line in the function declaration and one line for each usage:
function clownPuppiesEverywhere( param1, param2, + param3, // Add param3 ) { /* ... */ } clownPuppiesEverywhere( 'foo', 'bar', + 'baz', // Add param3 );
In the end, your diff output will be cleaner and easier to read, it would be much quicker to add a new parameter to your functions, it also makes it easier to copy paste elements and move code around.
Installation
npm install --save-dev babel-plugin-syntax-trailing-function-commas
Usage
Via .babelrc
(Recommended)
.babelrc
{ "plugins": ["syntax-trailing-function-commas"] }
Via CLI
babel --plugins syntax-trailing-function-commas script.js
Via Node API
require("babel-core").transform("code", { plugins: ["syntax-trailing-function-commas"] });
References
© 2018 Sebastian McKenzie
Licensed under the MIT License.
http://babeljs.io/docs/plugins/syntax-trailing-function-commas/